在IE 11上的beforeunload-不提示用户无法正常工作

弗雷迪汞

beforeunload事件的全局窗口对象添加侦听器时,IE 11(和10)不能充当Chrome和Firefox。

通常,您返回一个将用于填充浏览器本地对话框提示的字符串,或者如果您不希望对话框提示用户,则返回一个空字符串。

但是,在IE 11中,如果您返回一个空字符串和/或将其设置evt.returnValue为空字符串,则会打开浏览器本机的“导航离开”对话框,并提示用户确认他们可能会丢失未保存的更改。

有什么办法(不必删除事件侦听器)使对话框不出现在IE 11中?

请参阅我的JSFiddle(在IE中-因为它应在Chrome,Firefox和Safari中正常运行)。

这是小提琴中的来源:

var isDirty = false;
var message = '** You have unsaved changes. **'
window.addEventListener('beforeunload', function(evt){
  if(isDirty) {
    evt.returnValue = message;
    return message;
  }
  delete  evt.returnValue;
  return "";
});
弗雷迪汞

解决方案是不返回任何值(与return;相同return undefined;)。

var isDirty = false;
var message = '** You have unsaved changes. **'
window.addEventListener('beforeunload', function(evt){
  if(isDirty) {
    evt.returnValue = message;
    return message;
  }
  delete evt.returnValue;
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Owlcarousel 在 IE Mobile 11 上无法正常工作

来自分类Dev

IE 11 disable =“ True”无法正常工作

来自分类Dev

远程验证在IE上无法正常工作?

来自分类Dev

内联表在 IE 上无法正常工作

来自分类Dev

为什么对于IE9,IE10和IE11上的固定元素,translateX无法正常工作?

来自分类Dev

更改Font-awesome类在IE11上无法正常工作

来自分类Dev

IE 11中的文本区域选择在最后一行上无法正常工作

来自分类Dev

菜单CSS在IE11中无法正常工作

来自分类Dev

IE11中的dataTransfer无法正常工作

来自分类Dev

IE11中的Owl Carousel无法正常工作

来自分类Dev

在CSS中定位IE 11无法正常工作

来自分类Dev

输入按钮上的IE9 CSS无法正常工作

来自分类Dev

jQuery代码在Firefox / IE上无法正常工作

来自分类Dev

在IE8上无法正常工作的jQuery

来自分类Dev

菜单在IE8上无法正常工作

来自分类Dev

如何使HTML5导入在Firefox和IE11上正常工作

来自分类Dev

Webfonts无法在IE11 win8.1上呈现

来自分类Dev

保留3D无法在ie11上运行

来自分类Dev

最近无法在IE11 / 10/9上看到PDF

来自分类Dev

Bootstrap导航栏无法在IE11上正确居中

来自分类Dev

无法在 IE11 上播放 rtsp throuth vlc 插件

来自分类Dev

无法在 IE11 上播放 aac 音频文件

来自分类Dev

AngularJS无法从IE上的file://开始工作

来自分类Dev

Progressbar.js-SVG进度栏无法正常工作IE 11,10,9

来自分类Dev

CSS 3D动画在IE11中无法正常工作

来自分类Dev

Progressbar.js-SVG进度栏无法正常工作IE 11,10,9

来自分类Dev

背景图片CSS无法在IE11中正常工作

来自分类Dev

Bootstrap sb-admin-2主题在IE 11中无法正常工作

来自分类Dev

jQuery隐藏选择器在IE 11中无法正常工作

Related 相关文章

热门标签

归档