[英]smooth scroll into view vanilla javascript
目前,我有以下代码可滚动到div:
button.addEventListener('click',function(){
element.scrollIntoView();
},false);
如何使它平滑滚动? (无jQuery,无插件)
function animate(elem,time) {
if( !elem) return;
var to = elem.offsetTop;
var from = window.scrollY;
var start = new Date().getTime(),
timer = setInterval(function() {
var step = Math.min(1,(new Date().getTime()-start)/time);
window.scrollTo(0,(from+step*(to-from))+1);
if( step == 1){ clearInterval(timer);};
},25);
window.scrollTo(0,(from+1));
}
var divVal = document.getElementById('yourElementID');
animate(divVal,1000);
让我知道是否有帮助!
scrollIntoView有几个选项,尝试这个
.scrollIntoView({behavior:'smooth'});
我在此网站“ developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView”中找到了此信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.