Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.0k views
in Technique[技术] by (71.8m points)

jquery - Overriding window.close in Javascript

I am trying to override window.close() Method in javascript. Here is my code.

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

I am trying to bind this code to new window and execute the inner code when the new window is closed. Is is possible to override window.close like this ?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try this

You can use window.onbeforeunload event to call any function However, alert,prompt,confirm boxes are not allowed. you can return any string, to show any message.

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

If you suppose to close any other child window

You can try this

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

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...