Javascript 更改滚动条位置
当用户向下滚动网页时,是否可以更改滚动条的位置?例如,当你到达页面下方的一半时,滚动条会自动移回顶部。是的,我已经看过好几次了。下面是一些JS代码:Javascript 更改滚动条位置,javascript,scrollbar,position,Javascript,Scrollbar,Position,当用户向下滚动网页时,是否可以更改滚动条的位置?例如,当你到达页面下方的一半时,滚动条会自动移回顶部。是的,我已经看过好几次了。下面是一些JS代码: window.scrollBy(0,50) 50是您想要滚动的像素量。(window.pageYOffset | document.body.scrollTop | document.documentElement.scrollTop)应该为您提供几乎任何浏览器中的当前滚动位置。您需要关注的三个滚动功能是window.scroll(x,y),wi
window.scrollBy(0,50)
50是您想要滚动的像素量。(window.pageYOffset | document.body.scrollTop | document.documentElement.scrollTop)应该为您提供几乎任何浏览器中的当前滚动位置。您需要关注的三个滚动功能是
window.scroll(x,y)
,window.scrollBy(dx,dy)
和窗口。滚动到(x,y)
正如David提到的,您需要滚动位置来知道您在哪里,并使用
窗口.onscroll
事件来启动此计算。您可以使用事件计算滚动条当前位置的百分比,如果达到50%,则可以使用函数将滚动位置设置到页面顶部n:
window.onload = function () {
window.onscroll = function () {
var doc = document.body,
scrollPosition = doc.scrollTop,
pageSize = (doc.scrollHeight - doc.clientHeight),
percentageScrolled = Math.floor((scrollPosition / pageSize) * 100);
if (percentageScrolled >= 50){ // if the percentage is >= 50, scroll to top
window.scrollTo(0,0);
}
};
};
您可以查看我的示例。这些在所有浏览器上都可用,还是需要一些功能检测?window.scrollTo(0,0);在chomre中不适用于我