¿Hay alguna forma de pasar datos adicionales a través de eventos personalizados?

ecesito pasar datos entre dos guiones de usuario autónomos, idealmente sin tocar elunsafeWindow object - y pensé que usar eventos personalizados sería el camino a seguir. Pensé en algo como esto (ignoremos el modelo MSIE para el propósito del ejemplo):

addEventListener("customEvent", function(e) {
  alert(e.data);
});

var custom = document.createEvent("HTMLEvents");
custom.initEvent("customEvent", true, true);
custom.data = "Some data...";
dispatchEvent(custom);

Esto funciona muy bien en el entorno estándar de JavaScript y dentro de un script de usuario, pero cuando el evento es activado por el script de usuario y atrapado fuera de él o dentro de otro script de usuario, eldata propiedad esundefined en cromo. Supongo que podría guardar los datos pasados en lasessionStorage, pero está lejos de ser transparente. ¿Alguna otra solución elegante, caballeros y señoras? La perfección necesita y se puede lograr, puedo sentirlo.

Respuestas a la pregunta(4)

Su respuesta a la pregunta