我正在创建一个带有文本视图的基于浏览器的桌面应用程序。文本视图可能包含很长的水平线。在 Chrome 中,在触控板上向左滑动有时会激活 history.back 操作,有时会激活向左滚动操作。这对我们的用户来说有点烦人。
如何禁用历史滑动操作以便滑动只会滚动?
请注意,我已经提供了一个自定义 pushstate 事件处理程序。而且历史上的前进/后退在应用程序中具有适当的意义,所以我不能只是禁用历史。
我正在创建一个带有文本视图的基于浏览器的桌面应用程序。文本视图可能包含很长的水平线。在 Chrome 中,在触控板上向左滑动有时会激活 history.back 操作,有时会激活向左滚动操作。这对我们的用户来说有点烦人。
如何禁用历史滑动操作以便滑动只会滚动?
请注意,我已经提供了一个自定义 pushstate 事件处理程序。而且历史上的前进/后退在应用程序中具有适当的意义,所以我不能只是禁用历史。
据我所知,没有官方认可的方法来解决这个问题。切换滑动手势是在系统级别而不是在浏览器中进行调节的,因此禁用它们的唯一方法是在系统偏好设置中手动执行此操作(在系统偏好设置 -> 触控板 -> 更多手势中关闭“在页面之间滑动”) .
然而,在搜索了一会儿之后,我偶然发现了一个使用 JQuery 的 mousewheel.js 来覆盖设置的 hack。
Teambox 的 Pablo Villalba 的这个插件是我在搜索实现这种覆盖的插件时发现的第一个实现。希望这可以帮助。