2012-02-20 9 views
8

El HTML5 "oninput" evento es apoyado por algunos navegadores modernos, incluyendo Firefox 3.xestablecer oninput evento con Javascript

Sin embargo, curiosamente, sólo parece que funciona con javascript en línea:

<input id = "q" oninput="alert('blah')"> 

Cuando intento configurarlo con el código javascript, no se activa.

var q = document.getElementById("q"); 
q.oninput = function(){alert("blah");}; 

se trata simplemente de un error en Firefox, o hay alguna razón esto sucede?

+0

Esto parece ser un error en versiones anteriores de FF, ya que funciona para mí en la versión actual de Chrome y FF. http://jsfiddle.net/mrtsherman/c5ywv/ – mrtsherman

Respuesta

11

Después de descargar FireFox v3.6.27 y hacer algunas pruebas y buscar. Encontré que mi respuesta anterior estaba equivocada.

Lo que tengo es:

la propiedad de evento oninput se apoya en Firefox desde la versión 4.

Así que para añadir un detector de eventos, en este caso, puede realizar una

<input id = "q" oninput="alert('blah')"> 

o

q.addEventListener('input', function(){alert("blah");}, true); 

Pero prefiero el modo posterior. Puede encontrar las razones en addEventListener.
También una función similar en IE attachEvent.

Cuestiones relacionadas