【问题标题】:Scroll horizontally with mouse wheel using jQuery plugin使用 jQuery 插件使用鼠标滚轮水平滚动
【发布时间】:2019-09-06 13:24:54
【问题描述】:

我正在尝试使用this jQuery plugin 通过鼠标滚轮启用水平滚动。我完全关注this short CSS-Tricks tutorial。但是,在页面上滚动时出现此错误:

[干预] 无法阻止被动事件侦听器中的默认值 由于目标被视为被动。

这是我的 main.js 中使用的确切代码:

$(function() {    
   $("body").mousewheel(function(event, delta) {    
      this.scrollLeft -= (delta * 30);        
      event.preventDefault();    
   });    
});

我刚刚测试了用精确的 div $("#mainContainer") 替换 $("body") 并且它有效。我只是想知道为什么它不能像教程中那样在 body 上工作?

【问题讨论】:

标签: javascript jquery html


【解决方案1】:

如果您收到此警告,则表示浏览器默认为该对象设置了被动 touchmove 事件:true。这时候你的 preventDefault 不会被执行,页面也不会崩溃。因此,您可以删除 preventDefault 以消除警告。

$(function() {
   $("body").mousewheel(function(event, delta) {
      this.scrollLeft -= (delta * 30);
   });
});

【讨论】:

  • 谢谢,注释掉 preventDefault 消除了错误,但滚动不起作用。
猜你喜欢
  • 1970-01-01
  • 2014-07-20
  • 1970-01-01
  • 1970-01-01
  • 2013-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多