Iphone - Safari - 检测滑动导航

问题描述

我在使用移动 Safari 的滑动动画时遇到了一些问题:

我已经为搜索功能创建了一个各种弹出窗口(具有类似的目的,并查看 ebay 的移动网站。转到 ebay 移动版,并专注于搜索字段,它将覆盖一种弹出窗口整个网站)

然而,不同之处在于我添加一个 pushstate 命令,以便当您打开搜索弹出窗口时,它会推进浏览器历史记录。这样,如果用户想在浏览器上“返回”点击,它只会关闭弹出窗口,而不是转到用户来自的任何上一页

另一件事是我为窗口的出现和消失创建了动画。因此,当您专注于搜索字段时,弹出窗口会通过从右向左滑动的方式出现,也会以类似的方式消失。

不过,问题来了:iPhone 的滑动导航功能破坏了滑动效果—— 当您打开弹出窗口时,它会让您在浏览器的历史记录中前进。现在,如果您尝试使用滑动功能返回,它会显示上一页的滑动动画进入视图(iPhone 的认设置),但是,当它完成时,我的代码开始运行(因为最终,它触发了 popstate 事件) 并且还做了滑动动画,所以它看起来坏了。因此,它的外观是这样的:您滑动以返回上一页,该页面显示搜索弹出窗口被推出视图(就像我的动画一样),然后当您完成时,boom,动画重新出现,并再次播放。

理想情况下,我希望能够以某种方式检测滑动功能。也就是说,某个事件,或 popstate 事件中的某些内容来指示滑动导航正在发生或刚刚发生?

或者,是否能够禁用 safari 的效果? (我怀疑答案是一个很大的 NO)

除了在检测到 safari 时禁用我的自定义动画或取消 pushstate 功能之外,我还能做些什么吗?

解决方案的任何建议将不胜感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...