CustomEvent
representa eventos inicializados por una aplicaci贸n para cualquier prop贸sito.
Constructor
CustomEvent()
-
Crea un
CustomEvent
.
Propiedades
CustomEvent.detail
Read only- Cualquier dato transmitido al inicializar el evento.
Esta interfaz hereda las propiedades de su padre, Event
:
- event.altKey
- Devuelve un valor indicando si la tecla
<alt>
fue pulsada durante el evento. - event.bubbles
- Devuelve un valor que indica si el evento se propaga hacia arriba a trav茅s del DOM o no.
- event.button
- Devuelve el bot贸n del rat贸n.
- event.cancelBubble
- Devuelve un valor que indica si la propagaci贸n hacia arriba fue cancelada o no.
- event.cancelable
- Devuelve un valor que indica si el evento se puede cancelar.
- event.charCode
- Devuelve el valor Unicode de una tecla de car谩cter que fue apretada como parte de un evento keypress.
- event.clientX
- Devuelve la posici贸n horizontal del evento.
- event.clientY
- Devuelve la posici贸n vertical del evento.
- event.ctrlKey
- Devuelve un valor que indica si la tecla
<Ctrl>
fue apretada durante el evento. - event.currentTarget
- Devuelve una referencia al objetivo actual registrado para el evento.
- event.detail
- Devuelve detalles sobre el evento, dependiendo del tipo de evento.
- event.eventPhase
- Utilizado para indicar qu茅 fase del flujo del evento es actualmente en proceso de evaluaci贸n.
- event.explicitOriginalTarget
- El objetivo del evento (espec铆fico a Mozilla).
- event.isChar
- Devuelve un valor que indica si el evento produce o no una tecla de car谩cter.
- event.keyCode
- Devuelve el valor Unicode de una tecla que no es caracter en un evento keypress o cualquier tecla en cualquier otro tipo de evento de teclado.
- event.layerX
- Devuelve la coordenada horizontal del evento relativo a la capa actual.
- event.layerY
- Devuelve la coordenada vertical del evento relativo a la capa actual.
- event.metaKey
- Devuelve un valor booleano indicando si la
meta
tecla fue presionada durante un evento. - event.originalTarget
- El objetivo principal de un evento, antes de cualquier reapunte (Especifiaci贸n Mozilla).
- event.pageX
- Devuelve la coordenada horizontal del evento, relativo al documento completo.
- event.pageY
- Devuelve la coordenada vertical del evento, relativo al documento completo.
- event.relatedTarget
- Identifica un objetivo secundario para el evento.
- event.screenX
- Devuelve la coordenada horizontal del evento en la pantalla.
- event.screenY
- Devuelve la coordenada vertical del evento en la pantalla.
- event.shiftKey
- Devuelve un valor booleano indicando si la tecla
<shift>
fue presionada cuando el evento fue disparado. - event.target
- Devuelve una referencia al objetivo en la cual el evento fue originalmente enviado.
- event.timeStamp
- Devuelve el momento de creaci贸n del evento.
- event.type
- Devuelve el nombre del evento (distingue may煤sculas y min煤sculas).
- event.view
- El atributo vista identifica la
AbstractView
del cual el evento fue generado. - event.which
- Devuelve el valor Unicode de la tecla en un evento del teclado, sin importar el tipo de tecla que se presion贸.
M茅todos
CustomEvent.initCustomEvent()
-
Inicializar un objeto
CustomEvent
. Si el evento ya ha sido enviado, este m茅todo no hace nada.
Esta interfaz hereda los m茅todos de su padre, Event
:
Especificaciones
Especificaci贸n | Estado | Comentario |
---|---|---|
DOM La definici贸n de 'CustomEvent' en esta especificaci贸n. |
Living Standard | Definici贸n inicial. |
Compatibilidad con navegadores
BCD tables only load in the browser
Disparar desde c贸digo privilegiado a c贸digo no-privilegiado
Al disparar un CustomEvent desde c贸digo privilegiado (una extensi贸n) a un c贸digo no-privilegiado (una p谩gina web), deben considerarse algunos problemas de seguridad. Firefox y otras aplicaciones Gecko restringen al objeto creado desde un contexto siendo directamente utilizado por otro, el cual autom谩ticamente evitar谩 los agujeros de seguridad, pero estas restricciones tambi茅n pueden impedir que su c贸digo se ejecute como esperaba.
Al crear un objeto CustomEvent, debes crear el objeto desde la misma ventana. El atributo detail
de tu CustomEvent estar谩 sujeto a las mismas restricciones. Los valores de String y Array ser谩n legibles sin restricciones por el content, pero los objetos personalizados no lo har谩n. Al utilizar un objeto personalizado, necesitaras definir que atributos de ese objeto se pueden leer desde la secuencia de comandos de contenido usando Components.utils.cloneInto().
// doc es una referencia al contenido del documento
function dispatchCustomEvent(doc) {
var eventDetail = Components.utils.cloneInto({foo: 'bar'}, doc.defaultView);
var myEvent = doc.defaultView.CustomEvent("mytype", eventDetail);
doc.dispatchEvent(myEvent);
}
Pero hay que tener en cuenta que exponer una funci贸n permitir谩 que el script content lo ejecute con privilegios de chrome, lo que puede abrir una vulnerabilidad de seguridad.