微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在关闭浏览器选项卡之前运行一些 javascript 代码

如何解决在关闭浏览器选项卡之前运行一些 javascript 代码

每当有人关闭浏览器选项卡时,我都想运行一些 javascript,但不知道这是怎么可能的。

我尝试执行 https://stackoverflow.com/a/16707413/569976 描述的操作,但对我不起作用:

$(window).on('beforeunload',function() {
    return confirm("Do you really want to close?");
});

(加载了 jquery)

这是 JS 小提琴:https://jsfiddle.net/hc9xrgvj/

有什么想法吗?

解决方法

根据Mozilla

根据规范,显示确认对话框和 事件处理程序应在事件上调用 preventDefault()。

但是请注意,并非所有浏览器都支持此方法,有些浏览器 而是要求事件处理程序实现两个遗留问题之一 方法:

assigning a string to the event's returnValue property
returning a string from the event handler.

一些浏览器习惯于在确认中显示返回的字符串 对话框,使事件处理程序能够向 用户。 但是,这已被弃用,并且在大多数情况下不再受支持 浏览器

为了消除不需要的弹出窗口,浏览器可能不会显示创建的提示 在 beforeunload 事件处理程序中,除非页面已被交互 有,甚至可能根本不显示。

HTML 规范声明调用 window.alert(), window.confirm() 和 window.prompt() 方法可能会被忽略 本次活动。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。