在JavaScript中,关闭当前页面可以通过调用window.close()
方法来实现。但是,由于现代浏览器的安全限制,只有通过JavaScript打开的窗口(使用window.open()
方法)才能被JavaScript关闭。如果尝试关闭不是由脚本打开的窗口,大多数浏览器会忽略该命令或显示一个警告信息。
以下是一些关闭当前页面的方法和示例代码:
不带任何提示关闭窗口的js代码
window.opener = null;
window.open('', '_self');
window.close();
这段代码会尝试关闭当前窗口,但如果窗口不是由脚本打开的,这个操作可能会被浏览器阻止.
自定义提示关闭
function custom_close() {
if (confirm("您确定要关闭本页吗?")) {
window.opener = null;
window.open('', '_self');
window.close();
}
}
这段代码会在关闭前显示一个确认对话框,询问用户是否真的想要关闭页面。如果用户点击“确定”,页面将尝试关闭;如果点击“取消”,则不会关闭页面.
通过按钮操作控制页面关闭
<a href="javascript:window.opener=null;window.close();">关闭</a>
或者使用按钮:
<button onclick="window.opener=null;window.close();">关闭</button>
这些代码片段提供了一个链接或按钮,用户点击后会尝试关闭当前页面。同样,如果页面不是由脚本打开的,这个操作可能不会成功.
监听浏览器关闭事件
window.onbeforeunload = function(event) {
return confirm("真的要关闭此窗口吗?");
};
这段代码会在用户尝试关闭浏览器窗口时弹出一个确认对话框。如果用户选择“取消”,页面将不会关闭;如果选择“确定”,页面将关闭。但是,这种方法的行为在不同浏览器中可能会有所不同.
请注意,由于浏览器的安全限制,上述方法可能在所有情况下都不起作用,特别是当页面不是由脚本打开时。在实际应用中,应该尽量避免使用脚本关闭用户的浏览器窗口,因为这可能会影响用户体验。