在JS中杀掉卸载功能?

时间:2010-03-12 15:12:37

标签: javascript jquery

有没有办法用javascript(jquery)杀死卸载函数?

我正在寻找类似的东西:

window.onbeforeunload = function(){
    confirm("Close?")
}

或在jquery中:

$(window).unload(function() {
    confirm("close?")
});

现在,在窗口卸载时,我收到了确认警报,但无论如何都会继续。点击取消它不会留在我的页面上。

3 个答案:

答案 0 :(得分:2)

该函数必须返回false才能中止或true继续,所以你只需返回这样的确认:

window.onbeforeunload = function(){
   return confirm("Close?")
}

答案 1 :(得分:1)

$(window).unload(function() {
    var answer = confirm("Leave This website?")
if (answer){
    return false;
}
else{
    alert("Thanks for sticking around!");
    return true;
}
});

答案 2 :(得分:1)

是的,有办法。 onbeforeunload函数与其他事件的工作方式略有不同。您所要做的就是从函数返回一个字符串,浏览器将为您完成剩下的工作。语法如下:

window.onbeforeunload = function () { 
  return "Close?"; 
}

这就是你需要做的一切。在出现的对话框中单击“取消”将使用户保持在当前页面上,然后确定将让用户离开或关闭页面。很简单,你根本不需要使用jQuery。