在javascript中平滑向上滚动

在javascript中平滑向上滚动,javascript,Javascript,我想用纯JS平稳地滚动到顶部,代码不会比当前的长太多。现在,它只是向上滚动1px(我想它是px) 代码段: var textdiv = document.getElementById('infoblok'); var currentscroll = textdiv.scrollTop; for(i = currentscroll; i>0; i--){ textdiv.scrollTop = currentscroll-1; } 这可能会有所帮助

我想用纯JS平稳地滚动到顶部,代码不会比当前的长太多。现在,它只是向上滚动1px(我想它是px)

代码段:

    var textdiv = document.getElementById('infoblok');
    var currentscroll = textdiv.scrollTop;
    for(i = currentscroll; i>0; i--){
      textdiv.scrollTop = currentscroll-1;
   }

这可能会有所帮助。我只是在谷歌上快速搜索了一下


有一些库最适合此任务

但是,您可以尝试这样做,但请记住(1)用户可能会在您滚动时进行交互,这将产生不需要的用户体验,(2)您应该异步执行此操作,以便页面不会冻结

var textdiv = document.getElementById('infoblok');
var currentscroll = textdiv.scrollTop;
var interval = setInterval(function()
{
    if( textdiv.scrollTop <= 0 ) clearInterval(interval);
    textdiv.scrollTop -= 1;
}, 10);
var textdiv=document.getElementById('infoblok');
var currentscroll=textdiv.scrollTop;
var interval=setInterval(函数()
{
if(textdiv.scrollTop)可能重复的