Comando new Event
El comando new Event es un constructor
de eventos, con el cual se puede crear un
objeto de evento, y luego disparar este evento
desde JavaScript usando el método dispatchEvent.
Para qué sirve esto: se puede simular el clic
de un usuario en un botón, el intento de envío
de un formulario, etc. En este caso, el evento
no se diferenciará de uno real en nada excepto
por la propiedad
event.isTrusted.
Incluso se pueden crear eventos con nombres
no estándar (inventados por usted) y luego
dispararlos en el momento adecuado.
Sintaxis
new Event(tipo de evento, [banderas]);
Ejemplo
Supongamos que tenemos un botón. Al hacer clic en este botón, se muestra un mensaje. Hagamos que al pasar el ratón sobre el botón, este botón piense que se hizo clic en él:
<button id="button">button</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // creamos un evento
this.dispatchEvent(clickEvent); // simulamos un clic en el botón
});
:
Ejemplo
Se pueden crear eventos personalizados (con su propio nombre)
y luego dispararlos en el momento adecuado. Vamos
a vincular a un botón el evento showMessage y al
pasar el ratón sobre él, inicializaremos este evento:
<button id="button">button</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // creamos un evento
this.dispatchEvent(showMessageEvent); // disparamos la activación del evento
});
:
Véase también
-
la propiedad
addEventListener,
que vincula eventos -
la propiedad
removeEventListener,
que desvincula eventos