2012-06-01 20 views
5

Tengo un elemento de lista con un evento onclick. Se ejecuta en Chrome e Internet Explorer, pero no en Firefox. ¿Alguna sugerencia?¿Por qué mi evento onclick no está registrado en Firefox?

<li onclick="alert('test');">test test<br></li> 
+1

Comprobar si JavaScript está deshabilitado en Firefox? – Chandana

+0

otros eventos de javascript funcionan bien simplemente haga clic en – hdayi

+0

no debe codificar sus eventos 'onclick' en su html de todos modos. separe sus preocupaciones y cablee sus eventos en un archivo de script. – Jason

Respuesta

3

Esto funciona bien para mí en Firefox.

Comprobar esto:

  1. JavaScript está activado en su navegador.

  2. Intente agregar una declaración return false; en su etiqueta.

O una función como esta:

function test() { 
    //your code here 
    return false; 
} 
  1. O utilice esto:

<a href="#" onclick="alert('hi');">Link</a>

o esta

<a href="javascript:void(0)" onclick="alert('hi');">Link</a>

+0

muchas gracias. la última sugerencia funcionó. Pero no pude entender por qué solo el evento onclick no funciona. Mousemove, etc. todo funciona. de todos modos, el problema está resuelto :) – hdayi

+1

Creo que Firefox necesita una devolución. También puede usar un botón si lo desea. –

+0

no relevante a la pregunta. – user1133275

0

Estaba tratando de minimizar mi código html para enviar un código completo para simular el error que solicitó Boris Zbarsky. Entonces encontré mi error.

Estaba usando la etiqueta marquee, que ha quedado obsoleta. Ahora voy a usar jQuery en lugar de usarlo.

THX

+0

usa https://validator.w3.org/ para evitar un comportamiento extraño de FF como ese. – user1133275

0

En Firefox, the event object no es global. Tienes que acceder a él dentro de tus etiquetas de script, no en html.

onclick obras gustos esto

<li id="alert">test<br></li> 

<script> 
    document.getElementById("alert").addEventListener("click", function(event) { 
    alert('test'); 
    }, false); 
</script> 
+1

Eso no es cierto y ya no es relevante para la pregunta. – user1133275

+0

@ user1133275, ¿cómo escribirías un detector de eventos? ¿Lo escribirías en el html como originalmente se propuso? – daniella

+0

el ejemplo en la pregunta es válido.¿Cuál de los métodos válidos uno elige usar en diferentes contextos es una preferencia personal y, por lo tanto, no es una buena pregunta de stackoverflow ... es una buena práctica separar idiomas, por lo que mi recomendación sería limitar todo el JavaScript a un solo archivo .js no se adhieren estrictamente a él personalmente. – user1133275

Cuestiones relacionadas