2011-07-03 31 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