2013-08-22 208 views
3

我試圖覆蓋window.close()方法javascript。這是我的代碼。在JavaScript中重寫window.close

(function() { 
    var _close = window.close;     
    window.close = function() { 
     window.opener.alert("test"); 
     _close();        
    }; 
})(); 

我想將這段代碼綁定到新窗口,並在新窗口關閉時執行內部代碼。 是否可以重寫window.close這樣?

+6

您是否嘗試過它,看看會發生什麼? – Lloyd

+0

是的,當我關閉新窗口時沒有任何反應。你看過window.unload的 –

+0

嗎? – fred02138

回答

2

試試這個

您可以使用window.onbeforeunload事件調用任何功能 然而,警報,提示,確認框是不允許的。 你可以返回任何字符串,以顯示任何消息。

//var _close = window.onbeforeunload; 
window.onbeforeunload = function() { 
    // window.opener.alert("test"); 
    //_close();   
    return callBack(); 
}; 
function callBack() 
{ 
    return "Testing"; 
} 

如果你想關閉任何其他子窗口

你可以試試這個

var k = window.open("url"); 
k.onbeforeunload = callBack;