【问题标题】:how to turn off mousewheel in jqueryjquery如何关闭鼠标滚轮
【发布时间】:2022-01-05 10:23:11
【问题描述】:

我想在 jQuery 中禁用鼠标滚轮,我做到了,但我收到了这个错误

jquery.min.js:2 [干预] 由于目标被视为被动,因此无法在被动事件侦听器中阻止默认设置。见https://www.chromestatus.com/features/6662647093133312

这是JS文件中的代码:

$(document).ready(() => {
  $(window).bind("mousewheel", function() {
    return false;
  });
})

【问题讨论】:

  • @NicoHaase 我猜它不是因为该欺骗中的代码与 OP 使用的代码相同(并且已过时)
  • 你能澄清一下目标是什么吗?用户根本不应该滚动页面吗?

标签: javascript html jquery css mousewheel


【解决方案1】:

问题是因为您不能在被动事件上调用preventDefault(),例如mousewheel is - 等等。

要解决此问题,您可以在绑定事件处理程序时设置passive: false

window.addEventListener('wheel', e => e.preventDefault(), {
  passive: false
});
/* just to make the scrollbar appear in this demo */
body { height: 5000px; }

但是,我强烈建议您不要这样做。阻止用户使用非常流行的鼠标滚轮浏览您的网站会让您的用户非常恼火 - 并可能让他们相信您的网站出现故障。

【讨论】:

  • JQuery 还没有实现 options 参数?
  • @Teemu 我看不到,没有。
  • @Teemu 你能告诉我如何打开滚动
  • @Agata 也许 Rory 会编辑他们的答案以将其也包含在内..?
  • @Agata 这是一个演示如何切换滚动块:jsfiddle.net/RoryMcCrossan/163Ldg02
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-10-05
  • 1970-01-01
  • 2015-09-23
  • 2014-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多