我经常不小心关闭我的Chrome浏览器,不得不重新打开并重新加载我正在处理的所有标签。由于Chrome在关闭机制之前没有内置确认,我在关闭前写了一个简单的页面要求确认。我在其他标签页面中打开该页面。
Section.ForceNewPage
最近我将我的Chrome浏览器从版本56更新为60.现在代码似乎不起作用,因为它在关闭之前不再要求确认。我尝试了很多不同的互联网,但似乎都没有。
注意:我对Web开发很陌生。
答案 0 :(得分:5)
根据MDN docs:
为了防止不需要的弹出窗口,某些浏览器不显示在beforeunload事件处理程序中创建的提示,除非页面已与之交互;有些人根本不显示它们。
所以,我认为你的功能不能保证运行,特别是因为 Chrome 60显然具有第一种行为。来自notes:
从Chrome 60开始,只有在尝试显示它的帧已收到用户手势或用户交互时(或者如果任何嵌入式帧已收到此类手势),才会显示beforeunload对话框。
因此,如果您想继续使用此方法,则可能需要在会话中的某个时间点与页面进行交互。
或者,要打开重新启动Chrome时打开的所有标签,请尝试按Ctrl-Shift-T
。