我有一个页面,用户可以在其中水平滚动内容,在 Chrome 中,这个滚动动作有时会触发两个手指向后/向前滑动。
如何在不禁用水平滚动的情况下在特定页面中停用此 Chrome 的功能?
我有一个页面,用户可以在其中水平滚动内容,在 Chrome 中,这个滚动动作有时会触发两个手指向后/向前滑动。
如何在不禁用水平滚动的情况下在特定页面中停用此 Chrome 的功能?
太久了,我发现了这个:
html, body {
overscroll-behavior-x: none;
}
我发现此 chrome 设置禁用了该行为: chrome://flags/#overscroll-history-navigation
只需禁用过度滚动,它将禁用使用滚动的页面导航,但页面上的正常水平滚动将起作用。经过我的测试。
通过在地址栏中粘贴 Chrome://flags转到Chrome 标志 并搜索Overscroll history navigation并将其从默认更改为Disabled
它将提示重新启动浏览器,重新启动它。
这应该解决它。
只能通过禁用滚动本身来禁用此功能:
使用 jQuery:
('body').on('wheel', function(e){ e.preventDefault(); });
没有 jQuery:
document.body.addEventListener('wheel', function(e){ e.preventDefault(); });
此代码可在现代浏览器中运行,但未经过跨浏览器测试。另外,主要警告:如果您仍然希望用户能够滚动页面,则必须滚动您自己的滚动才能使其正常工作。