Este artículo describe el uso del modelo de evento JavaScript. Compártelo para su referencia. El análisis específico es el siguiente:
1. Modelo de eventos
Burbujeante: los eventos se pasan desde nodos de hoja a lo largo del nodo del antepasado hasta el nodo raíz hacia arriba.
Captura: desde el elemento superior del árbol DOM hasta el elemento más preciso, opuesto al evento de burbujas
Modelo de eventos estándar DOM: el estándar DOM admite eventos de tipo burbuja y eventos de tipo de captura. Se puede decir que es una combinación de los dos, en primer lugar, de tipo captura, y luego transmisión de tipo burbujas.
2. Objeto de evento
En el navegador IE, el objeto de eventos es una propiedad de la ventana. En el estándar DOM, el evento debe pasar a la función de procesamiento de eventos como un parámetro único.
Obtenga un objeto de evento compatible:
función (evento) {// El evento es una función de procesamiento aprobada como un parámetro del evento DOM estándar = evento? Event: Window.event; }En es decir, el objeto del evento está contenido en la calificación del evento, mientras que en el estándar DOM, el objeto está contenido en la propiedad objetivo
Obtenga el elemento señalado por un objeto de evento compatible:
var Target = Event.srCelement? event.srcelement: event.target;
La premisa es garantizar que el objeto de evento se haya obtenido correctamente.
3. Oyente de eventos
En IE, el oyente registrado se ejecuta en orden inverso, es decir, el oyente registrado se ejecuta primero.
element.attachevent ('onClick', observador); // Registre el oyente elemento.detachevent ('onclick', observador) // eliminar el oyenteEl primer parámetro es el nombre del evento, y el segundo es la función de procesamiento de devolución de llamada
Bajo el estándar DOM:
element.AdDeventListener ('Click', Observer, USECapture) Element.RemoveEventListener ('Click', Observer, UsECapture)El primer parámetro es el nombre del evento, sin el prefijo de "ON", el segundo parámetro es la función de procesamiento de devolución de llamada, y el tercer parámetro indica si la función de devolución de llamada se llama en la etapa de captura o en la etapa de burbujas. La verdadera verdadera es la etapa de captura
4. Entrega de eventos
Cancelar la entrega de eventos en el navegador Compatible
Función SomeHandler (Event) {Event = Event || Window.event; if (event.stoppropagation) // DOM Standard Event.stopPropagation (); else event.cancelBubble = true; // es decir, estándar}Cancelar el procesamiento predeterminado después de la entrega del evento
Función SomeHandler (Event) {Event = Event || Window.event; if (event.preventDefault) // Evento estándar DOM. prevenDefault (); else Event.ReturnValue = True; // es decir, estándar}Espero que este artículo sea útil para la programación de JavaScript de todos.