Voici deux méthodes de création d'un lien dont le seul but est d'exécuter du code JavaScript. Quel est le meilleur, en termes de fonctionnalité, de vitesse de chargement des pages, de validation, etc.?
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
ou
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
myJsFunc()
a une valeur de retour, votre page se cassera. jsfiddle.net/jAd9G Vous souhaitez toujours avoir à utiliser void
comme ceci: <a href="javascript:void myJsFunc();">
. Mais alors, le comportement serait toujours différent. L'appel du lien via le menu contextuel ne déclenche pas l' click
événement.
<a href="javascript:;" onclick="myEvent()"
?
javascript:;
est beaucoup plus rapide à taper quejavascript:void(0)
<a>
balise si ce que vous voulez faire n'est PAS d'ouvrir une autre page via la fonction de navigateur natif, mais plutôt de déclencher une" action "javascript? Simplement en utilisant une span
balise avec une classe de js-trigger
serait probablement beaucoup mieux ". Ou est-ce que je manque quelque chose?
<a href="javascript:void(0)" onclick="myJsFunc();">
cela n'a absolument aucun sens. Si vous devez utiliser lejavascript:
protocole psuedo, vous n'avez pas non plus besoin de l'onclick
attribut.<a href="javascript:myJsFunc();">
fera très bien.