禁用滚动覆盖像Facebook一样活跃

disable scroll with overlay active like Facebook

本文关键字:一样 活跃 Facebook 滚动 覆盖      更新时间:2023-09-26

我想知道Facebook是如何处理浏览器滚动时,打开一个更大的视图的图像。似乎滚动被禁用,但仍然可见(元素容器)。我想在一个网站上创建一个类似的行为,这样当我调用覆盖来显示图像时,滚动被"禁用",以避免人们滚动和失去覆盖的视线。

你只需要设置

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

如果您不希望用户能够滚动,则返回到

document.body.style.overflow = '';

当你做的时候。

这是一个演示(点击它在两种状态之间切换)

我找到了一个答案,就像facebook的滚动条一样。这个答案最初是由Patrick DaVader发布的,我觉得值得分享一下:

要关闭滚动,试试这个:

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

重置:

$(window).off('scroll');

链接,我发现它:如何用jQuery编程禁用页面滚动