We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.

La interface MessageEvent representa un mensaje recibido por un objeto de destino.

Este es usado  para representar mensajes en : 

La acción desencadenada por este evento es definida en una función establecida como el controlador de eventos para el evento pertinente message ( es decir :  Usando un manejador de onmessage  como se lista arriba).

Nota: Esta característica está disponible en Web Workers.

Constructor

MessageEvent()
Crear un nuevo MessageEvent.

Propiedades

Esta interface tambien herada propiedadesde desde su padre Evento.

MessageEvent.data Read only
La información enviada por el emisor del mensaje.
MessageEvent.origin Read only
USVString es una representacion del origen del emisor del mensaje. 
MessageEvent.lastEventId Read only
DOMString es una representación de una ID unico para el evento.
MessageEvent.source Read only
El MessageEventSource (El cual puede ser un WindowProxy, MessagePort, or ServiceWorker object) es ima representación del mensaje emitido.
MessageEvent.ports Read only
Un  array de objetos MessagePort representa los puertos asociados al canal, el mensaje se esta enviado a traves de (donde sea apropiado,  por ejemplo, en mensajes de canal o al enviar un mensaje a un trabajador compartido).

Metodos

Esta interface tambien herada propiedadesde desde su padre, Evento.

MessageEvent.initMessageEvent()
Inicializar un vento de mensaje. No use esto mas — en vez de eso use el constructor MessageEvent() .

Ejemplos

En nuestro Ejemplo basico de trabajador compartido(Ejecutar trabajador compartdo ), Tenemos dos paginas HTML, cada una de las cuales usa algo de JavaScript para mejorar un calculo simple. Los diferentes scripts estan usando el mismo archivo de trabajo para mejorar el calculo — Ambos pueden accederlo,  Incluso si sus paginas esta corriendo n diferentes ventanas. 

The following code snippet shows creation of a SharedWorker object using the SharedWorker() constructor. Both scripts contain this:

var myWorker = new SharedWorker('worker.js');

Both scripts then access the worker through a MessagePort object created using the SharedWorker.port property. If the onmessage event is attached using addEventListener, the port is manually started using its start() method:

myWorker.port.start();

When the port is started, both scripts post messages to the worker and handle messages sent from it using port.postMessage() and port.onmessage, respectively:

first.onchange = function() {
  myWorker.port.postMessage([first.value,second.value]);
  console.log('Message posted to worker');
}

second.onchange = function() {
  myWorker.port.postMessage([first.value,second.value]);
  console.log('Message posted to worker');
}

myWorker.port.onmessage = function(e) {
  result1.textContent = e.data;
  console.log('Message received from worker');
}

Inside the worker we use the SharedWorkerGlobalScope.onconnect handler to connect to the same port discussed above. The ports associated with that worker are accessible in the connect event's ports property — we then use MessagePort start() method to start the port, and the onmessage handler to deal with messages sent from the main threads.

onconnect = function(e) {
  var port = e.ports[0];

  port.addEventListener('message', function(e) {
    var workerResult = 'Result: ' + (e.data[0] * e.data[1]);
    port.postMessage(workerResult);
  });

  port.start(); // Required when using addEventListener. Otherwise called implicitly by onmessage setter.
}

Especificaciones

Especificación Estado Comentario
HTML Living Standard
La definición de 'MessageEvent' en esta especificación.
Living Standard  

Compatibilidad entre navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Caracteristica Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support 1 (Yes) 4.0 (2.0) 9 ? 10.0+
origin as USVString and source as MessageEventSource (Yes) ? 55.0 (55.0) Sin soporte ? ?
Feature Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? (Yes) ? ? ? 3.0+
origin as USVString and source as MessageEventSource ? ? 55.0 (55.0) Sin soporte ? ?

Ver tambien

  • ExtendableMessageEvent — similar to this interface but used in interfaces that needs to give more flexibility to authors.

Etiquetas y colaboradores del documento

Colaboradores en esta página: jpmontoya182
Última actualización por: jpmontoya182,