在Chrome中取消取消加载前模块窗口后,显示自定义确认窗口

时间:2019-01-14 11:26:27

标签: javascript window dom-events

我有这种情况:

  1. 该表格在催泪窗口中打开

  2. 有未保存的更改

  3. 窗口正在关闭

在这种情况下,我需要显示一个标准模块窗口, enter image description here

,如果用户单击“取消”,则应显示自定义确认窗口 enter image description here

但是在Chrome中,确认窗口上的图标没有出现 enter image description here

在Firefox和IE上,图标是在相同情况下出现的。

“ onbeforeunload”事件的代码:

window.addEventListener('beforeunload', function (e) {
    // function where the confirm window is formed
    showConfirmWindow();

    return e.returnValue = window.getResource('', 'ex.unsaved_changes');
});

图像的路径是正确的,因为不仅在此使用此窗口,而且还显示图像。仅在Chrome中,并且仅在这种情况下。我想Chrome可以节省资源,因为窗口会关闭-那么为什么要拉起图标。但是也许有人知道如何为Chrome修复它?

其他信息:如果在形成确认窗口的功能上添加了0毫秒的超时-显示图标

window.addEventListener('beforeunload', function (e) {
    // function where the confirm window is formed
    setTimeout(showConfirmWindow, 0);

    return e.returnValue = window.getResource('', 'ex.unsaved_changes');
});

但这是一个错误的决定。

0 个答案:

没有答案