2013-03-04 36 views
1
全球第

有没有办法从注入脚本传递window对象global.html页,Safari浏览器扩展:通过窗口对象从注入脚本

我试图通过窗口作为对象,以全球网页的一部分,从“加载”侦听器函数,它试图分派消息时抛出类型错误。

这是代码。

window.addEventListener("load", onDocLoad); 

function onDocLoad() 
{ 
    var msg = new Object(); 

    msg.url = window.location.href; // this all works 
    ..... 
    msg.win = window; // With this it throws type error on line safari.self.tab.dispatchMessage("XXX",msg); 
    safari.self.tab.dispatchMessage("XXX",msg); 
} 

消息调度工作和其他数据可以传递没有错误期望的窗口对象。 我该怎么做?

回答

1

作为文档说你不能像传递对象HTMLWindow:

消息数据不限于单个数据类型;它可以是布尔值,数字,字符串,数组,RegExp对象或符合W3C标准的任何符合安全传递结构化克隆数据的内容。在命令不需要数据的情况下,它也可以为空,未定义或保留为空。

相关问题