【发布时间】:2018-04-18 12:22:22
【问题描述】:
我正在尝试在 iPhone Safari (602.1) IOS 10.3.3 上捕获 beforeunload、unload、pagehide 事件。但似乎在 iPhone 上这些事件不会触发,有趣的是,在具有相同版本的浏览器和 IOS 的 iPad 上,事件 do 会触发。我注意到的唯一区别是 iPad 为您提供了选项卡选项,但 iPhone 没有。有没有办法在 iPhone IOS 10.3.3 上捕捉这些事件?
注意:这些事件会在 iPhone IOS 8.4.1 上触发。
【问题讨论】:
-
iPhone doesn't support onbeforeunload, unload is deprecated,那么问题来了,你如何使用
.pagehide? (显然,应该可以) -
你好 Adelin,实际上主要问题是所有这些事件都不适用于 IOS 10.3.3 safari,正如你所说,我已经读过 beforeunload,unload 不会工作,但是 pagehide 有相同的方式问题 ?我正在使用下面的页面隐藏,window.onpagehide = function() { return "abort"; } 或函数 abort() { return "abort"; } window.addEventListener("pagehide", abort);我也有 document.addEventListener("pagehide", abort);但这些不会在 Iphone 上触发。
标签: javascript iphone ipad mobile-safari