Los siguientes son dos métodos para construir un enlace que tiene el único propósito de ejecutar código JavaScript. ¿Qué es mejor, en términos de funcionalidad, velocidad de carga de página, propósitos de validación, etc.?
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
o
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
myJsFunc()tiene un valor de retorno, su página se romperá. jsfiddle.net/jAd9G usted todavía tiene que utilizar voidde este modo: <a href="javascript:void myJsFunc();">. Pero entonces, el comportamiento aún sería diferente. Invocar el enlace a través del menú contextual no activa el clickevento.
<a href="javascript:;" onclick="myEvent()"?
javascript:;es mucho más rápido de escribir quejavascript:void(0)
<a>etiqueta si lo que quieres hacer es NO abrir otra página a través de la función del navegador nativo, sino tener alguna 'acción' de JavaScript que se activará? Simplemente usando una spanetiqueta con una clase de js-triggerprobablemente mucho mejor ". ¿O me estoy perdiendo algo?
<a href="javascript:void(0)" onclick="myJsFunc();">tiene absolutamente ningún sentido. Si debe usar eljavascript:protocolo psuedo, no necesita elonclickatributo también.<a href="javascript:myJsFunc();">hará bien.