相关疑难解决方法(0)

如何暂时禁用滚动?

我正在使用scrollTo jQuery插件,并想知道是否有可能通过Javascript临时禁用滚动窗口元素?我想要禁用滚动的原因是当你滚动时scrollTo是动画,它变得非常丑陋;)

当然,我可以做一个$("body").css("overflow", "hidden");然后在动画停止时将其恢复为自动,但如果滚动条仍然可见但不活动会更好.

javascript jquery scroll

412
推荐指数
14
解决办法
67万
查看次数

显示弹出窗口时防止背景滚动

我有一个弹出窗口中显示的表单.加载后,背景显示为灰色,但用户仍可以上下滚动背景内容.

如何防止背景滚动?

这里的例子

pdf屏幕截图右侧的'发送此报价'链接.

html jquery popup

21
推荐指数
2
解决办法
5万
查看次数

添加固定位置后,防止页面滚动到顶部

每当我将我的.noscroll课程添加到正文时,我都会面临一个问题,即页面滚动到顶部.这样滚动条仍然可见,但每当叠加层出现时都会变灰.

我知道这是addClass()函数的原因,因为当我注释掉那一行时,当我的叠加层出现时它不会滚动到顶部.

jQuery的

$('a').click(function(e) {
    //reset default anchor behavior
    e.preventDefault();

    //add noscroll class to body
    $("body").addClass("noscroll"); 

    //open overlay box
    openOverlayBox(); 
});
Run Code Online (Sandbox Code Playgroud)

openOverlayBox()功能只是一个带黑色调的完整浏览器屏幕覆盖.

CSS

body.noscroll{
    position: fixed;
    width: 100%;
    overflow-y: scroll;
}
Run Code Online (Sandbox Code Playgroud)

正文HTML

<a href="#">Test</a>
Run Code Online (Sandbox Code Playgroud)

.noscroll课程添加到身体后,如何使滚动位置保持不变?

编辑1:我试图在Facebook上实现相同的目标.如果您查看图片或视频,则会显示叠加层,滚动条将显示为灰色,但会保留滚动位置.

编辑2:我找到了一个非常接近我的问题的解决方案,但唯一的问题是这不会使滚动条变灰,而只是删除它.此外,当内容居中于中间时,它仍会使内容向右跳一点,因为隐藏了来自正文的滚动条.

编辑3:在Cuberto的回答和对自己的一些研究之后,我发现需要做些什么才能让它工作我想要.但是我不清楚我将如何开始这样做.但这应该解决它.我打开叠加时我需要设置我的主div position: fixed和滚动位置的负顶值.退出叠加层时,应删除position: fixed;top属性,并设置与打开叠加层时相同的滚动位置.

html javascript css jquery

17
推荐指数
2
解决办法
3万
查看次数

如何暂时锁定网页的滚动?

如何在显示对话框时暂时锁定网页的滚动?我有一个对话框,我想在停用覆盖的网页滚动启用滚动.

是否有js命令暂时禁用滚动?

html javascript

14
推荐指数
3
解决办法
4万
查看次数

标签 统计

html ×3

javascript ×3

jquery ×3

css ×1

popup ×1

scroll ×1