【问题标题】:Disable navigation swipe on Chrome browser in javascript [duplicate]在javascript中禁用Chrome浏览器上的导航滑动[重复]
【发布时间】:2012-11-16 11:08:06
【问题描述】:

在 Chrome 移动版上,Google 引入了带有向左/向右滑动事件的标签导航。

但我有一个 web 应用程序,我实现了向左滑动事件来打开我的导航菜单(如 facebook 或 spotify)

问题是,如果用户在第一个左像素(left:0)上开始滑动,浏览器将启动导航模式,并且不执行我的打开菜单功能。

有没有办法在 Chrome 上禁用或停止导航模式?

我已经尝试过使用.preventDefaultstopPropagation 功能,但无法正常工作:(

感谢您的帮助

【问题讨论】:

  • 另一个想法——也许你应该改变你的用户界面?如果您的移动网站用户无法再更改浏览器中的标签页,他们会感到非常沮丧。
  • 切换选项卡不用滑动就可以完成,而且IMO这个手势对于开发者来说真的很烦人。不幸的是,除了改变用户界面之外真的没有其他解决方案......
  • 我也遇到了这个问题。我注意到谷歌表格以某种方式禁用了这一点,所以它一定是可能的。

标签: javascript google-chrome navigation swipe


【解决方案1】:

您可以尝试使用以下组合:

  • 根据this example,使用window.onbeforeunload拦截浏览器Back函数,以及
  • 使用this example中说明的技术禁用导航?

【讨论】:

  • onbeforeunload 在用户更改选项卡时不会被调用(仅当用户关闭页面时)。所以你的解决方案不起作用
  • 它改变了标签?您的问题表明向左/向右滑动会向后/向前移动。
  • 是的,它改变了选项卡。很抱歉造成混乱。
【解决方案2】:

此行为内置于 chrome 的 java 源代码中(可能),这就是为什么我认为仅使用 Javascript 无法禁用此行为的原因。如果这种行为是必要的,也许您可​​以使用 phonegap 分发您的应用程序。

【讨论】:

  • 我已经有了原生版本。但是这个 webapp 是一个轻量版的应用程序,适合没有安装应用程序的用户。
猜你喜欢
  • 2013-03-06
  • 1970-01-01
  • 1970-01-01
  • 2019-10-12
  • 2021-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多