我使用此JavaScript直到我的页面加载它显示一个简单的图像。但问题是用户可以滚动页面使加载动画向上移动。我想阻止这个。任何人请帮助我。这是代码我use.Scrolling在Linux中被禁止(ubuntu)但我可以在Windows中滚动
答案 0 :(得分:6)
使用此选项禁用滚动:
无滚动
$('html, body').css({
'overflow': 'hidden',
'height': '100%'
})
再次启用页面加载完成或页面就绪后启用滚动:
<强>滚动强>
$('html, body').css({
'overflow': 'auto',
'height': 'auto'
})
如果有任何问题,请回复,但在主要浏览器上进行测试......
答案 1 :(得分:1)
您需要添加固定位置:
$(window).load(function() {
$('body').css({'overflow':'auto', 'height':'auto', 'position':'relative'});
});
&#13;
body {
overflow: hidden;
height: 100%;
position: fixed;
width:100%;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
&#13;
答案 2 :(得分:0)
你可以尝试将它放在CSS中的父div中
#mydiv {
overflow:hidden
}
现在在您的文档中添加: -
$('#mydiv').css('overflow', 'auto');
或强>
将此课程添加到您的身体
.stop-scrolling {
height: 100%;
overflow: hidden;
}
答案 3 :(得分:-1)
如果您执行@joe建议的操作,并且没有可用的js,并且您之后没有应用其他css规则,则屏幕将不可滚动。最好在身体标记后立即应用的脚本
<body>
<script>
$('html, body').css({ 'overflow': 'hidden', 'height': '100%' })
</script>
...
markup blah blah blah
...
<script>
$('html, body').removeAttr('style')
</script>
</body>
并在body标签的底部放置另一个脚本以删除样式属性。
如果使用css而不是js,只需将样式标记放在脚本标记所在的相同位置