Javascript : Invocation inattendue du gestionnaire onclick
Lorsque vous tentez de créer un lien qui ressemble à une balise d'ancrage mais exécute une fonction personnalisée, le onclick La fonction est invoquée immédiatement lors du chargement de la page, rendant les clics suivants inefficaces.
Explication :
Dans l'extrait de code fourni :
<code class="javascript">var sendNode = document.createElement('a'); sendNode.setAttribute('onclick', secondFunction());</code>
La ligne setAttribute('onclick', secondFunction()) est incorrect. Il exécute immédiatement la fonction secondFunction et attribue sa valeur de retour (généralement non définie) à l'attribut onclick. Cela conduit à l'invocation immédiate de la secondeFonction.
Solution :
Pour attribuer correctement la secondeFonction en tant que gestionnaire d'événements, la syntaxe correcte est :
<code class="javascript">var sendNode = document.createElement('a'); sendNode.setAttribute('onclick', secondFunction);</code>
Cela crée un écouteur d'événement qui attend un événement de clic sur l'élément avant d'invoquer la secondeFonction.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!