Bonjour à tous,
je suis en train de faire mes premiers pas avec JS, et (forcément) j'ai quelques problèmes de newbies… Pour le coup, j'ai du mal à trouver des mots-clés efficaces pour Google, donc je viens vers vous
J'ai une petite portion de code qui s’exécute normalement quand je l'insère directement dans mon HTML. Par contre dès que je l'a met dans un fichier à part, il se comporte différemment…
Voilà mon code :
1 2 3 4 5 6 7 8 9 10 11 12 | var headings = this.document.getElementsByClassName("heading"); alert(headings.length);//DEBUG //Pour chaque élément on créé un onClick var i = 0; while(i < headings.length){ headings.item(i).onclick = function() { alert("Arrête de me cliquer dessus!"); }; i++; } |
Pour chaque élément de la classe "heading", je voudrais afficher un petit texte avec onclick. Quand je lance ma page avec le code directement dedans, il n'y a pas de problèmes (le message de debug m'affiche bien le bon nombre d'éléments).
Par contre, quand je met le code dans un fichier externe, j'ai l'impression qu'il a du mal récupérer le "this.document" (le message de debug m'affiche 0 élément…)
Vous savez d'où cela pourrait venir?
"this" est-il identique dans les deux cas?
Si non, comment récupérer le "this" de mon fichier contenant le HTML?
Merci d'avance à tous ceux qui m'aideront