Fonction JavaScript onclick déclenchée prématurément
Lors de la création d'un lien avec une esthétique similaire à une balise mais destiné à exécuter une fonction lors d'un clic , les utilisateurs peuvent rencontrer un scénario dans lequel la fonction est appelée par erreur lors du chargement de la page. Cela empêche l'événement de clic souhaité de fonctionner correctement.
Le piège courant est l'utilisation inappropriée des parenthèses lors de l'attribution de l'attribut onclick. Au lieu de sentNode.onclick = secondFunction(), qui exécute immédiatement la fonction, la syntaxe correcte est sentNode.onclick = secondFunction. Ceci attribue une référence à la fonction, qui ne sera exécutée que lors de l'événement de clic.
function startFunction() {
var sentNode = document.createElement('a');
sentNode.setAttribute('href', "#");
sentNode.setAttribute('onclick', secondFunction);
//sentNode.onclick = secondFunction();
sentNode.innerHTML = "Sent Items";
//...
}
En omettant les parenthèses, l'événement onclick est correctement lié à une référence de fonction et non au résultat de son exécution, garantissant le comportement souhaité.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3