删除包含页面的iframe时不会触发onb​​eforeunload

时间:2018-06-21 16:03:57

标签: javascript iframe parent onbeforeunload

我有一个网页Page1,该网页定义了一个有效的onbeforeunload事件,我在其中进行了一些提取。此Page1加载到另一个 iframe1 上的domain中。

问题:当iframe1是来自DOM的removed时,我的Page1 beforeunload事件根本没有触发。

我现在正在本地处理这些文件:

page1.html

<script>
window.onbeforeunload = () => {
  console.log('Page1 unloaded')
}
</script>

parent.html

<div>
    <iframe id='page1' src='./page1.html' ></iframe>
</div>
<button onclick="document.getElementById('page1').remove()" >Remove</button>

问题:如何触发unload的{​​{1}}事件?

谢谢。

2 个答案:

答案 0 :(得分:0)

window.onbeforeunload = function(e) {
var dialogText = 'Dialog text here';
e.returnValue = dialogText;
return console.log(dialogText);
};

当您单击链接或关闭窗口时,会在控制台中显示dialogText

答案 1 :(得分:0)

最后,我结束了在后端设置websocket的操作。我在使用nodejs env时,我使用了socket.io