6

window.close()でメソッドをオーバーライドしようとしていますjavascript。これが私のコードです。

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

このコードを新しいウィンドウにバインドし、新しいウィンドウが閉じられたときに内部コードを実行しようとしています。このようにオーバーライドすることは可能window.closeですか?

4

1 に答える 1

6

これを試して

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;
于 2013-08-23T06:12:48.373 に答える