mousewheel 取消_如何暂时取消绑定jquery.mousewheel

我正在制作一个基于同位素的页面.主显示屏水平滚动,我使用

jquery.mousehweel script进行默认的鼠标滚轮操作.我想在打开文章时将默认操作返回给用户,并阻止它水平滚动,但我无法弄清楚怎么做.

这是给出一个例子的jsfiddle链接:

当您单击一个框时,它会变得非常高,但如果您使用鼠标滚轮,它仍然会将页面左右滚动.我想让用户只在盒子高的时候垂直滚动.

谢谢你的帮助!

注意:如果您的鼠标不在#container div上,您就可以使用鼠标水平滚动.问题是当鼠标位于包含所有框的#makeMeScrollable div上时

最佳答案 你必须取消绑定完全相同的功能.在您的代码中,您正在解除具有类似占用空间的不同功能.要使用完全相同的函数,首先定义它并将其存储为变量,然后在bind和unbind中使用对该变量的引用.有关您的小提琴的更新,请参阅

http://jsfiddle.net/DJVX2/530/,以显示此工作在您的上下文中.基本的想法是这样的:

// Define the callback

var callback = function(ev) { ... };

// Bind the callback

$(selector).bind('event', callback);

// Unbind the callback

$(selector).unbind('event', callback);

从jQuery 1.7(本文撰写时的最新版本)开始,事件绑定的首选方法是使用on和off,如下所示:

// Bind the callback

$(selector).on('event', callback);

// Unbind the callback

$(selector).off('event', callback);

(请注意,您还可以将另一个参数传递给这些参数以进行事件委派.有关详细信息,请参阅the docs.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值