Bonjour,
J'ai sensiblement le même problème que Noquioz dans cette discussion .on('click'): Preventdefault() fonctionne pas pour tous les liens.
En synthèse, lors d'un clic de l'utilisateur sur un lien X, je souhaite empêcher le scroll vers ce lien X. Le div qui contien le lien X est généré en javascript par l'appel à une fonction au chargement de la page, de la manière suivante :
Pour empecher le scroll lors du clic sur div12, j'utilise ensuite la fonction suivante comme précisé par Daniel ci-dessus:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 function creation_chanson (number){ var ligne = document.getElementById('lignechanson'); <!--récupération du DIV conteneur 'lignechanson' créé dans le HTML --> var div1 = document.createElement('div'); <!--création d'un div dans le conteneur 'lignechanson' --> .... // autre div créés var div12 = document.createElement('div'); <!--élément cliquable que je souhaite figer lors du clic --> div12.className='col-md-6 cursor_clic figer_clic'; div12.setAttribute("onClick",'clic_chanson(this)'); <!--fonction annexe qui permet de lancer des actions lors du clic --> div1.appendChild(div12); ligne.appendChild(div1); .... // autre div créés
Malheureusement, cela ne fonctionne pas et je ne comprends pas pourquoi. J'ai aussi testé avec un seul selector et le scroll n'est pas non plus bloqué lors du clic.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $( "#lignechanson" ).on( "click", "div.figer_clic", function(e) { e.preventDefault(); });
Merci de votre aide.
Partager