我试图阻止滚动我的网站,直到单击按钮然后允许滚动。我可以成功阻止滚动,但我无法取消绑定此功能。这是我的代码:
提前致谢!
$('body').addClass('noscroll');
$('.fold-trigger').click(function(event) {
$('body').removeClass('noscroll')
console.log('removed');
});
if ($('body').hasClass('noscroll')){
$(window).bind('scroll', function(){
$('body').on({
'mousewheel': function(e) {
if (e.target.id == 'el') return;
e.preventDefault();
e.stopPropagation();
}
})
});
} else {
$('body').on({
'mousewheel': function(e) {
if (e.target.id == 'el') return;
e.preventDefault(false);
e.stopPropagation(false);
}
})
}
}
答案 0 :(得分:1)
如果你想在你的身体上切换这个课,你应该改变你的逻辑。
$('body').on('mousewheel', function(e) {
if ($('body').hasClass('noscroll')) {
e.preventDefault();
e.stopPropagation();
}
});
然后随时添加和删除noscroll
课程。