Javascript - 如何为scrollIntoView设置动画

时间:2016-10-28 14:42:12

标签: javascript jquery

我只能通过scrollIntoView函数获得点击进入视图的div,并且它按照我想要的方式工作,但我想知道是否有办法以某种方式为其设置动画,并使它慢一点?

我尝试了here的建议:

function scroll(element, parent){
      $(parent)[0].scrollIntoView(false);
      $(parent).animate({
         scrollTop: $(parent).scrollTop() + $(element).offset().top - $(parent).offset().top,
         duration: 500,
         easing: 'swing'
       });
    }

但它将元素推向远处,它并没有按原样推动它:

$('#drawer')[0].scrollIntoView(false);

2 个答案:

答案 0 :(得分:0)

scroll = function(element, parent, time) {
   $(parent).animate({
       scrollTop: $(element)[0].offsetTop - $(parent)[0].offsetTop,
   }, time, "swing");
}

您可能想要添加scrollIntoView,我不知道这是为了什么。 这适用于jQuery 3.1.1。

答案 1 :(得分:-1)

检查一下:http://demos.flesler.com/jquery/scrollTo/ 很多选择,我已多次使用它并取得了良好的效果。

相关问题