考慮這種情況下:onload事件不會觸發一次以上的子窗口
var openWindow = function (name) {
var win = window.open("/", name);
document.write("Opening window: " + name + "<br />");
win.onload = function() {
document.write("Opened window: " + name + "<br />");
};
};
var openAsdf = openWindow.bind(null, "asdf");
openAsdf();
setTimeout(openAsdf, 3000);
(見本jsfiddle)
三秒之前,請不要關閉窗口了。您會注意到第二個加載事件未被調用(即使窗口中的頁面似乎刷新了)。爲什麼不?我怎樣才能確定現有窗口何時刷新或再次被調用?
彈出成功阻止 – Ibu 2012-01-09 21:58:17
你的jsfiddle嘗試調用'win.onload =函數(){'時拋出一個JavaScript錯誤。 – 2012-01-09 21:59:07
你使用什麼瀏覽器?在Chrome 16中沒有錯誤。 – benekastah 2012-01-09 22:02:32