Necesito pasar datos entre dos usuarios autónomos, idealmente sin tocar el objeto unsafeWindow
, y pensé que usar eventos personalizados sería el camino a seguir. Pensé en algo como esto (háganos caso omiso del modelo de MSIE para el propósito del ejemplo):¿Hay alguna manera de pasar datos adicionales a través de eventos personalizados?
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 la norma javascript medio ambiente y dentro de un userscript, pero cuando el evento es disparado por el userscript y atrapado fuera de él o dentro de otro usercript, la propiedad data
es undefined
en cromo. Supongo que podría guardar los datos pasados en el sessionStorage
, pero está lejos de ser perfecto. ¿Alguna otra solución elegante, señores y señoras? La perfección necesita y se puede lograr, puedo sentirlo.
La etiqueta 'google-cromo-extension' ajusta mejor que' elegance'. Atraerá al público correcto;) –
buen pensamiento :) – Witiko