ouvintes de eventos JavaScript detalhados
JavaScript ouvintes de eventos deve primeiro entender os seguintes princípios:
-
Ouvir para a função eventos não podem ser trazidos para quaisquer argumentos
-
Ouvindo eventos e apenas uma função de parâmetro e é o objeto evento para o coletor de eventos, há outras funções
-
gramática
Adicionar um evento
element.addEventListener ( 'nome do evento', o nome da função evento, evento bolha / capture);
Remover evento
element.removeEventListener ( 'nome do evento', o nome da função evento, evento bolha / capture);
Quando o IE8 e navegador abaixo, respectivamente, são as seguintes:
element.attachEvent ( 'no início do nome do evento', o nome da função do evento);
element.detachEvent ( 'ON no início do nome do evento', o nome da função do evento);
caso
var num = 0 ; var bn = document.querySelector ( "botão" ); bn.addEventListener ( "clique" , clickHandler1); bn.addEventListener ( "clique" , clickHandler2); bn.addEventListener ( "mouseMove" , clickHandler2); função clickHandler1 (e) { núm ++ ; console.log ( "AAA" ); se (num> 1 ) { // esta是事件侦听的对象 // e.currentTarget.removeEventListener ( "clique", clickHandler1); isto.removeEventListener ( "clique" , clickHandler1); } } Função clickHandler2 (e) { // console.log ( "bbb"); console.log (e.type) }
Note-se que:
PS
nível DOM0:
▪ uma etiqueta do mesmo evento só pode vincular função de um evento
▪ eventos podem ser adicionados diretamente em linha
▪ principais navegadores são suportados, não há problemas de compatibilidade
nível DOM2
▪ uma etiqueta do mesmo evento pode ligar a função de múltiplos eventos
▪ obrigatório função de evento deve ter um nome, caso contrário ele não pode ser excluído
▪ problemas de compatibilidade, IE8 e redação anterior e uma redação navegador padrão não é o mesmo