【发布时间】:2015-02-16 12:55:37
【问题描述】:
iOS Safari 在以下情况下似乎不会触发 pageshow 事件。
假设我有 3 页
- 页面 A:(在 pageshow 事件中有一些代码)
- B 页
- C页
用户从A -> B 导航。按下返回按钮。 (页面显示触发良好)
用户然后导航到另一个页面可能是页面 B 或页面 C。然后再次按下后退按钮。 (页面显示不触发)
相反,如果用户再次最小化和最大化窗口或切换到另一个窗口并返回(通过在 iPhone 上按中间按钮),则再次触发 pageshow 事件。
在 Android 上似乎一切正常
window.onpageshow = function(e) {
alert('hello');
}
还有其他人遇到过吗?我在这件事上花了几个小时,却想不出解决办法。
任何帮助将不胜感激。
【问题讨论】:
-
你解决了这个问题吗?我在 iOS 9.3 上遇到了同样的问题
-
@JorgeRamírez:是的,很久以前。我不记得了,但有两种不同的事件,一种在 Android 中运行良好,另一种在 iOS 中正常运行。一个是
pageshow,另一个我不记得了。因此,基于 UserAgent,我将我的事件句柄添加到该事件中。试试pageinit、pagebeforeshow、pageshow等。 -
感谢您的回复,但不幸的是,我已经尝试了所有这些活动,但没有任何运气
标签: javascript ios safari