我正在创建一个Safari扩展程序。有一次,我想打开一个新的选项卡/窗口,然后在该新选项卡的某些文本字段中输入文本。

这就是我尝试过的。

    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.onloadnewWindow.onload = fillContent;之前和之后始终是未定义的

有可能做我想做的事吗?有没有更好的办法?

最佳答案

如果您要打开的页面在另一个域中,则这是不可能的,因为您违反了javascript的相同原始策略(这表明您只能“控制”运行脚本的相同域中的页面)。

09-27 10:30