首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >window.onbeforeunload不会立即触发

window.onbeforeunload不会立即触发
EN

Stack Overflow用户
提问于 2013-09-05 23:17:42
回答 2查看 502关注 0票数 1

我在我的web应用程序中使用了jQuery Dirty Forms插件,如下所示:

代码语言:javascript
运行
复制
$(document).ready(function(){
 $('form.checkUnsavedData').dirtyForms();           
});

$(window).on('beforeunload', function(){    
    if($.DirtyForms.isDirty()){             
        return($.DirtyForms.message);                               
    }           
});

但是第一次点击任何链接都不会触发onbeforeunload事件。只有下一次点击才会触发它。这个问题存在于不同的浏览器中(google chrome,firefox,ie10)。你怎么了?

EN

回答 2

Stack Overflow用户

发布于 2013-09-06 00:44:07

我相信你需要添加onBeforeUnload API,就像它在drupal Download & extend中说的那样,否则你应该试着不通过jQuery绑定beforeunload,而用普通的javascript来做,比如:window.beforeunload = function(){/*code*/};。最后,检查您使用的jQuery版本、浏览器以及它们如何处理此事件。查看Catching the Javascript beforeunload event, the cross-browser way,它有点过时了,但它可能会对你有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2016-02-21 20:27:34

怎么了?

代码语言:javascript
运行
复制
$(document).ready(function(){
  $('form.checkUnsavedData').dirtyForms();           
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18640137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档