禁用滚动,覆盖活动,如Facebook

时间:2013-05-06 00:08:38

标签: javascript jquery browser scroll

我想知道当一个人打开更大视图的图像时,Facebook如何处理浏览器滚动。看起来滚动被禁用但仍然可见(元素容器)。我想在网站上创建一个类似的行为,这样当我调用叠加层来显示图像时,滚动会被“禁用”以避免人们滚动并忽略叠加层。

2 个答案:

答案 0 :(得分:1)

您只需设置

即可
document.body.style.overflow = 'hidden';

虽然您不希望用户能够滚动,但还原为

document.body.style.overflow = '';

当你这样做。

Here is a demo(点击它可在两种状态之间切换)

答案 1 :(得分:0)

我找到了一个答案,就像facebook的卷轴一样。答案最初是由'Patrick DaVader'发布的,我认为值得分享:

  

要关闭滚动,请尝试以下操作:

std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
     

重置:

var current = $(window).scrollTop();

$(window).scroll(function() {
    $(window).scrollTop(current);
});

我找到它的链接:How to programmatically disable page scrolling with jQuery

相关问题