如何很好地禁用滚动条?

时间:2013-08-08 11:28:46

标签: javascript jquery css scroll

我创建了这个javascript函数,当显示侧边菜单时禁用页面内容的滚动:(就像移动应用程序上的fb一样)

function disableScroll(){
    var top = $(window).scrollTop();
    var left = $(window).scrollLeft();
    $('body').css('overflow', 'hidden');
    $(window).scroll(function(){
        $(this).scrollTop(top).scrollLeft(left);
    });
}

但是,每当我尝试滚动侧面菜单时,页面内容都会显示滚动条向上移动并返回其原始位置。如何防止显示它看起来真的很难看。

我尝试使用CSS修复滚动位置,但它会自动将我的页面置于顶部,这不是我想要的。我希望它保持在用户最后点击侧边菜单按钮的位置。

2 个答案:

答案 0 :(得分:1)

您还应该将overflow: hidden设置为body元素..然后根本不会显示滚动条。之后将其恢复原来的溢出。

答案 1 :(得分:0)

<强> JQUERY

$('body').delegate('#element', 'click', function() {
        $("body").css('overflow', 'hidden');
    });

这可能可以解决您的问题吗?