如何使用Javascript NOT jQuery动画window.scrollTo?

时间:2018-09-24 11:40:59

标签: javascript

我进行了搜索,尽管作家以JavaScript的身份写了人们对jQuery的回答。无论如何,如何使用JavaScript制作window.scrollTo的动画?我使用了setInterval,但是没有用。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:2)

尝试这个。

window.scrollTo(0, 0);

我已经使用它从下到上滚动。它使用javascript对我有效。

另一种方式:

HTML

<button onclick="scrollToTop(3000);"></button>

JavaScript

 function scrollToTop(scrollDuration) {
  var scrollStep = -window.scrollY / (scrollDuration / 15),
    scrollInterval = setInterval(function(){
    if ( window.scrollY != 0 ) {
        window.scrollBy( 0, scrollStep );
    }
    else clearInterval(scrollInterval); 
 },15);
}

答案 1 :(得分:2)

我找到了它,通过传递该对象,可以平滑滚动:

window.scrollTo({
  top: selectedFrame.offsetTop,
  left: 0,
  behavior: 'smooth'
});

答案 2 :(得分:1)

这种方式对我有用:

function slideTo(id) {
    var element = document.getElementById(id);
    document.body.scrollTo({
        top: element.offsetTop,
        behavior: 'smooth'
    });
}