我需要在彈出窗口中完成加載後立即更改頁面的URL(我正在使用window.open函數調用)。 無論如何,我可以找出彈出窗口中的頁面在父窗口中完成加載的時候嗎?我無法在彈出的頁面中更改任何內容,因爲它屬於另一個網站。我們如何知道何時加載彈出窗口url(window.open)?
回答
這似乎是不言自明的,但如果你需要更多的解釋告訴我(或者如果它不工作,但它應該...)
var winObj = window.open(/* lot of params */);
if(!winObj)
{
/* pop-up blocked! */
}
else
{
winObj.onload = function(){ /* do stuff here */ };
}
window.open
返回到該窗口的window
參考目的。
如果打開的窗口指向與窗口打開程序相同域的URL,則它將具有對該對象的完全訪問權限,就像它自己的window
對象一樣。
var w = window.open(url);
// If the window opened successfully (e.g: not blocked)
if (w) {
w.onload = function() {
// Do stuff
};
}
此處適用相同的原產地政策。如果打開的窗口的URL位於不同的域上,那麼開啓者將無法訪問該窗口引用的成員。
+1表示與我完全相同(但是,您沒有提及「if(w)」的含義):P – 2010-01-27 09:24:39
但是OP沒有說他/她不能更改頁面嗎?這不會覆蓋頁面onload事件嗎? – toc777 2011-03-30 11:08:18
我認爲OP意味着他們無法實際更改頁面上的代碼。這提供了一種動態附加偵聽器的方法。 – 2011-03-31 07:59:55
- 1. 我們如何知道有多少彈出窗口?
- 2. JavaScript彈出窗口加載父URL
- 3. 如何禁用彈出窗口點擊右鍵打開時window.open
- 4. 我們如何在Radwindow彈出窗口中打開raddatepicker彈出窗口
- 5. 如何知道加載的窗口是Firefox Electrolysis窗口
- 6. Window.open重新加載窗口
- 7. 如何增加窗口上氣球彈出通知的時間
- 8. 當我們打開一個彈出窗口時如何禁用父窗口?
- 9. 如何知道何時創建窗口?
- 10. 如何知道ajax模式彈出窗口是否打開?
- 11. window.open與彈出窗口攔截器
- 12. 解除封鎖window.open彈出窗口?
- 13. 用window.open自定義彈出窗口
- 14. 如何使頁面加載時自動打開彈出窗口?
- 15. 如何在頁面加載時創建彈出窗口?
- 16. 如何在頁面加載時打開kendo窗口彈出窗口?
- 17. 如何避免JavaScript`window.open`觸發彈出窗口警報
- 18. 如何禁用window.open彈出窗口中的最大化按鈕?
- 19. Window.Open被彈出窗口阻止,如何修復?
- 20. 如何從彈出窗口找出「父窗口重載完成」?
- 21. 主WPF窗口如何知道次WPF窗口何時關閉
- 22. 如何知道IE文件下載提示何時彈出?
- 23. 如何將主窗口從彈出窗口重定向到URL?
- 24. 彈出窗口:當彈出彈出窗口時關閉彈出
- 25. N2CMS:如何添加彈出窗口
- 26. 如何追加元素彈出窗口
- 27. 如何關閉我們想要的彈出窗口
- 28. 如何定位我的彈出窗口?
- 29. 如何知道窗口是否已完成加載?
- 30. 如何知道窗口「加載」事件是否已被觸發
即使受到同一起源策略的限制,您是否可以與窗口事件綁定? – 2010-01-27 09:20:50
我打開的彈出式網址位於不同的域中,因此出現如下所示的錯誤: 錯誤:許可拒絕 在上設置屬性Window.onload。 –
exsource
2010-01-27 10:11:14