2011-07-03 12 views
1

我正在创建一个Safari扩展。有一次,我想打开一个新标签页/窗口,并在该标签的某些文本字段中输入文本。在新创建的窗口上设置onload(),可能吗?

这就是我试过的。

var newWindow = window.open('http://openradar.appspot.com/myradars/add', "new tab"); 
    var fillContent = function() { 
     //Fill some content 
     //This never get called 
    }; 

    newWindow.onload = fillContent; 

问题是函数永远不会被调用。

在调试过程中,我看到newWindow是有效的但newWindow.onload总是未定义,前后newWindow.onload = fillContent;

是否有可能做我想要做什么?有没有更好的办法?

回答

2

如果您尝试打开的页面位于另一个域中,那么这是不可能的,因为您违反了JavaScript的同一起源策略(该策略声明您只能控制处于脚本运行的相同域中的页面)。

+0

这确实是一个其他域...我会找到一个解决方法,谢谢。 – gcamp