最近我将我的Google Chrome浏览器更新为版本' 54.0.2840.71 m'突然javascript' onUnload'事件已停止工作。我确信,它在升级之前工作正常。
在我的代码中(如下所述),我正在尝试打开一个“孩子”。来自父母的窗口'窗口以及子窗口关闭/刷新时(即触发其卸载事件时),它还应重新加载或刷新父窗口。
parent.html文件的源代码:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Parent Page</title>
</head>
<body>
This is parent page. Click <a href="#" onClick="window.open('child.html', '_blank', 'toolbar=no,scrollbars=yes,resizable=no,top=150,left=250,width=500,height=500'); return false;">here</a> to open the child page.
</body>
</html>
child.html文件的源代码:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Child Page</title>
<script type="text/javascript">
window.onunload = refreshParent;
function refreshParent() {
window.opener.location.reload();
}
</script>
</head>
<body>
This is child page.
</body>
</html>
此代码适用于Internet Explorer&#39;和&#39; Mozilla Firefox&#39;浏览器,它也曾用于早期版本的谷歌浏览器&#39;但不是最新版本。
如果我做错了事,请告诉我。
谢谢&amp;此致!
答案 0 :(得分:0)
我猜测事件实际上是被调用的(因为我可以添加断点并在其中执行任何其他操作)并且window.opener.location.reload()只是被此提交忽略/阻止:{ {3}}
我也创建了一个错误(https://chromium.googlesource.com/chromium/src/+/8fb70277dba468aac9d2eae51e432d76667a79db),因为我担心由于前面提到的差异而导致你的错误被关闭。