相关疑难解决方法(0)

有没有办法通过自定义事件传递其他数据?

我需要在两个自主用户脚本之间传递数据 - 理想情况下不接触unsafeWindow对象 - 我认为使用自定义事件将是最佳选择.我想到了这样的事情(让我们为了示例的目的忽略MSIE模型):

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

var custom = document.createEvent("HTMLEvents");
custom.initEvent("customEvent", true, true);
custom.data = "Some data...";
dispatchEvent(custom);
Run Code Online (Sandbox Code Playgroud)

这在标准的javascript环境中和一个用户脚本中很好地工作,但是当事件被用户脚本触发并被捕获到它之外或在另一个用户脚本中时,data属性是undefined铬.我想我可以保存传递的数据sessionStorage,但它远非无缝.还有其他优雅的解决方案,绅士和女士们?完美需要并且可以实现,我能感受到它.

javascript dom userscripts google-chrome-extension dom-events

57
推荐指数
3
解决办法
4万
查看次数