根据MDN文档:由于某些原因,基于Webkit的浏览器不遵循规范中的对话框。下面的示例中有一个几乎可以跨浏览器工作的关闭示例。
window.addEventListener("beforeunload", function (e) { var confirmationMessage = "\o/"; (e || window.event).returnValue = confirmationMessage; //Gecko + IE return confirmationMessage; //Webkit, Safari, Chrome });
这个例子适用于处理所有浏览器。
如果我理解正确,您想知道何时有效关闭一个标签/窗口。嗯,据我所知,在JavaScript中唯一检测到这一点的方法是使用onunload或onbeforeunload事件。
不幸的是(或幸运的是?),当您通过链接离开一个网站或使用浏览器的返回按钮时,这些事件也会触发。所以这是我能给出的最好答案,我认为您无法在JavaScript中原生地检测到一个纯粹的关闭。如果我理解错误,请纠正我。
根据MDN文档:
由于某些原因,基于Webkit的浏览器不遵循规范中的对话框。下面的示例中有一个几乎可以跨浏览器工作的关闭示例。
这个例子适用于处理所有浏览器。
如果我理解正确,您想知道何时有效关闭一个标签/窗口。嗯,据我所知,在JavaScript中唯一检测到这一点的方法是使用onunload或onbeforeunload事件。
不幸的是(或幸运的是?),当您通过链接离开一个网站或使用浏览器的返回按钮时,这些事件也会触发。所以这是我能给出的最好答案,我认为您无法在JavaScript中原生地检测到一个纯粹的关闭。如果我理解错误,请纠正我。