我已经构建了一个单页应用程序,它有不同的位置固定的部分,在特定数量的滚动之后,在每一个部分中,当它成为当前的时,css3动画出现--但是作为一个要求,我需要禁用滚动直到动画完成--所以当用户点击一个部分时,禁用他们转换到新幻灯片的能力--禁用/锁定滚动直到动画有时间完成--否则一半的元素会褪色,然后点击消失。
--如果我使用类似于一个类附加到主体上的东西--来过低:隐藏,它会被震住
--我是否删除滚动监听器并重新追加它们?我担心这会导致ux中的故障--也许不是scrollTo(0,0)--而是在当前的滑动滚动上修复它,以暂停他们的体验,直到动画完成?
function noScroll() {
window.scrollTo(0, 0);
}
// add listener to disable scroll
window.addEventListener('scroll', noScroll);
// Remove listener to re-enable scroll
window.removeEventListener('scroll', noScroll);
在车身上使用css:
.noScroll { overflow: hidden !important; }
JS:
document.body.classList.add('noScoll')
document.body.classList.remove('noScoll')
[编辑]以回应旧县
的合理关注
下面是要添加的部分代码,以便无论有没有滚动条,页面都保持在相同的位置:
const Remove_ScrollBars =_=>
{
let xLeft = document.body.scrollLeft
, yTop = document.body.scrollTop
document.body.classList.add('noScroll')
document.body.scrollLeft = xLeft
document.body.scrollTop = yTop
}
const Return_ScrollBars =_=>
{
let xLeft = document.body.scrollLeft
, yTop = document.body.scrollTop
document.body.classList.remove('noScroll')
document.body.scrollLeft = xLeft
document.body.scrollTop = yTop
}
演示1:
null
const Remove_ScrollBars =_=>
{
let xLeft = document.body.scrollLeft
, yTop = document.body.scrollTop
document.body.classList.add('noScroll')
document.body.scrollLeft = xLeft
document.body.scrollTop = yTop
}
const Return_ScrollBars =_=>
{
let xLeft = document.body.scrollLeft
, yTop = document.body.scrollTop
document.body.classList.remove('noScroll')
document.body.scrollLeft = xLeft
document.body.scrollTop = yTop
}
noScrollBar.onclick = Remove_ScrollBars
ScrollBar.onclick = Return_ScrollBars
.noScroll {
overflow: hidden !important;
}
p { white-space: nowrap; }
html lang-html prettyprint-override"><p>aa</p>
<p>bb</p>
<p>cc</p>
<p>dd</p>
<p>cc</p>
<p>dd</p>
<p>aa</p>
<p>bb</p>
<p>cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc </p>
<p>dd</p>
<p>aa</p>
<p>aa</p>
<p>_ _ _ _ _ _ _ _ _ _ <button id="noScrollBar">Scroll Bar Off </button> </p>
<p>_ _ _ _ _ _ _ _ _ _ <button id="ScrollBar"> Scroll Bar On </button> </p>
<p>bb</p>
<p>cc</p>
如何禁用滚动?
问题内容: 我的意思是滚动时会轻松。 问题答案: var $pages = $(“.page”), PS: 使用,如果你的s为像一个滚动的DIV内(而不是) 注意: 对于 移动设备, 您可能希望针对浏览器的标签栏高度调整值(最好还是完全避免这种情况)。你有主意
我有登陆页(一页)网站。我有文本在中心的着陆页,突出显示与CSS动画。不幸的是,高亮显示这段文字的CSS动画是在进入网站后立即执行的。我怎么才能阻止它?如何使一个动画只在它出现在屏幕上时与文本一起运行。现在,当用户滚动并工作时,文本就会显示出来。不幸的是,下划线在进入网站后移动得更早。当用户滚动页面时,文本将带下划线:( 此元素的屏幕截图
我正在抓取这个网页的用户名,在滚动后加载用户 指向页面的Url:“http://www.quora.com/Kevin-Rose/followers" 我知道页面上的用户数(本例中的用户数为43812),如何滚动页面直到加载所有用户?我在互联网上搜索过同样的代码,在任何地方我都能找到几乎相同的代码行: driver.execute_script("window.scroll至(0)") 如何确定垂
在本节中,您将学习如何向下或向上滚动以显示网页上显示的其他信息。 让我们来看看下面一个测试用例,它将自动化以下场景: 调用Firefox浏览器 打开URL - www.yiibai.com 向下滚动网页以显示其它页面部分 我们将逐步创建测试用例,以便您完全了解如何使用JavaScript的“scrollBy”方法滚动网页。 第1步 - 启动Eclipse IDE并打开在本教程前几节中创建的测试套件
我目前正在使用JavaFX ScrollBar控件,它本身运行良好-但是我对拖动拇指时的“动画”不满意。 更具体地说: 当我快速拖动拇指时,快速加速-拇指动画不会立即跟随,但有点“滞后”-当我停止拖动拇指时的相同行为。。。拇指真正开始/追上预定位置需要一秒钟的时间 这不是繁重的布局计算之类的问题,因为我只是单独渲染ScrollBar而没有任何内容。 是否有一些选项可以让这个“加速动画”/“滞后”消