Code (extrait de MDN)
const divs = document.querySelectorAll('div');
for (let i = 0; i < divs.length; i++) {
divs[i].onclick = function(e) {
e.target.style.backgroundColor = bgChange();
}
}
3 Réponses :
Votre compréhension [d'un
Il n'y a rien répété dans ce code - la boucle
C'est une explication terrible. Le clic ne change pas la valeur de
L'explication était en référence à la boucle de la boucle que la compréhension de Wesley d'A pour la boucle est éteinte. Dossier, je pouvais probablement avoir référencé que dans ce que je disais ...
pour code> fonctionne une seule fois et attribue des gestionnaires d'événements à chaque élément div code>. Ensuite, ces manutes code> code> sont exécutées chaque fois que vous cliquez sur un div code>.
i code>
La boucle pour la boucle itérale sur toutes les divs et ajoute un gestionnaire de clic sur chaque div. p>
La NIFE n'est pas nécessaire lorsque laisse code> est utilisé dans la boucle
i ++ est exécuté après chaque itération et de ma compréhension, chaque itération se produit lorsqu'un événement "Cliquez sur" sur n'importe quel DIV. P>
non. Chaque itération se termine lorsque le gestionnaire d'événements est attribué fort>, pas quand il est déclenché. P>
Lorsque le clic se produit est hors de propos. La boucle passe rapidement à travers tous les éléments pour mettre en place quelque chose pour arriver
quand strong> ils sont cliqués. P> vous pouvez voir cela en ajoutant une insole.log instruction à l'intérieur de la boucle. p>
p>
<div>***</div> <div>***</div> <div>***</div> <div>***</div> <div>***</div>
Cet exemple dit essentiellement de saisir tous les éléments
div code> et attribuer unonclick code> gestionnaire d'événements à chacun de ces éléments. Cela ne se produit qu'une fois, mais une fois que les manutentionnaires d'événements sont affectés à tous les élémentsdiv code>, ils déclencheront chaque fois que vous cliquez sur cesdiv code> s.