jQuery - 停止收听向下滚动

时间:2015-07-05 13:30:54

标签: javascript jquery

所以我在用户滚动时使用此代码执行任务:

function myFunction(){
var position = $(window).scrollTop();

$(window).scroll(function() {
    var scroll = $(window).scrollTop();
    if(scroll > position) {
         // scrolling downwards
         hypeDocument.showSceneNamed('Section 2', hypeDocument.kSceneTransitionCrossfade, 1.1);
    }
    position = scroll;
});

return false;
}

但我想阻止在一页上向下滚动。无论如何我可以这样做,同时允许其他页面上的滚动?我尝试使用$(window).off("scroll");,但阻止向两个方向滚动。

2 个答案:

答案 0 :(得分:0)

这将完全禁用滚动:

$('html, body').css({
    'overflow': 'hidden',
    'height': '100%'
});

要恢复:

$('html, body').css({
    'overflow': 'auto',
    'height': 'auto'
});

答案 1 :(得分:0)

如果您只想阻止在垂直方向(向上和向下)滚动,可以将该方向的滚动设置为隐藏:

overflow-y: hidden

您可以使用jQuery触发该效果:

$('body').css('overflow-y','hidden');