什么是$(window).unload()的万无一失的替代品?

时间:2017-09-27 08:31:24

标签: javascript jquery

我正在阅读jQuery API Documentation

中给出的函数.unload()的jQuery文档

清楚地写道,.unload()将在1.8之后的版本中弃用,并在3.x中完全删除。

我有一个依赖于此.unload()函数的本地Intranet应用程序。

我是否必须手动依赖window.onbeforeunload功能并查看特定浏览器是否支持此功能,或者任何人都可以帮助我找到更通用的解决方案。

凯文建议,我试过



$(window).on("unload", function(e){
    return confirm("Do you really want to exit");
});

<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
Testing JQuery Unload in 3.x Version
&#13;
&#13;
&#13;

Fiddle

但它不起作用

1 个答案:

答案 0 :(得分:4)

unload是jQuery中的简写方法,不推荐使用。使用on时,您必须使用与删除on的JavaScript中完全相同的事件。

在此处,使用beforeunload代替unload

&#13;
&#13;
//$(window).on("unload", function(e){
//              ^^^
$(window).on("beforeunload", function(e) {
//            ^^^
  return confirm("Do you really want to exit");
});
&#13;
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
Testing JQuery Unload in 3.x Version
&#13;
&#13;
&#13;