dbi a écrit :
Ca va un peu vite pour moi...
Ha désolé
dbi a écrit :
si je comprends bien, sans le [0] ça fera la même chose à toutes les class qui s'appelle 'fermer-aveclick'
Quand on utilise
getElementsByClassName il retourne un tableau d'élément (par définition une class peut être réutilisée plusieurs fois dans le code). Du coup on s'en sert généralement comme on l'a fait dans le premier code pour chopper tout les éléments
.fermer-aveclick. Par contre ensuite il faut faire une boucle
for dessus pour parcourir tout les éléments du tableau et faire des trucs avec (nous on a rajouté un écouteur de click sur chacun des éléments).
Ici on veut sélectionner un seul élément. Donc on fait un
getElementsByClassName mais on va pas faire un
for pour un seul élément alors on y accède directement via [0].
dbi a écrit :
et si je vise précisément le 3eme 'fermer-aveclick' de mon html je met [2] ?
c'est ca ?
yes, mais il n'y a pas trop d’intérêt et c'est plutôt dangereux : le jour ou tu rajoute la même classe sur un élément avant, ton code Js va faire n'importe quoi.
Du coup je te suggère pour
icon_menu juste de passer par un id quand c'est un élément unique (plus sur, plus rapide, plus robuste) :
<a id="menu" class="icon_menu"></a>
var menu = document.getElementById('menu');
[EDIT]
Je viens de m’apercevoir d'une coquille dans mon précédent post j'ai oublié de remplacer
fermer-aveclick par
icon_menu dans le code !! C'est peut etre pour ça que je t'ai mélé, je suis désolé. Je vais le corriger.
[/EDIT]
Modifié par _laurent (27 Feb 2019 - 11:05)