如何动画滚动到div内的段落顶部?

时间:2013-10-04 14:38:07

标签: jquery html css

我是jQuery的新手,我无法使用以下代码。我想动画div中某个段落的滚动到顶部,但不知何故动画无法运行。

请找到这个小提琴中的代码:

http://jsfiddle.net/SgNpP/9/

$(document).ready(function(){
$('#div1').scroll(function() {    
  var par1toTop = $('#par1').position().top;
  if ($('#div1').scrollTop() >= par1toTop) {
  var par5toTop = $('#par5').position().top;
      if ($('#div2').scrollTop() != par5toTop && par5toTop != 0) {
          //why can't I animate the scrolling here?
          $('#div2').animate({scrollTop(par5toTop)}, 800);
        }
    }
});
}); 

1 个答案:

答案 0 :(得分:0)

$('#aID').get(0).scrollIntoView();

这是我目前拥有的代码,它可以工作......但链接到锚点对象,而不是div。试一试:)

您可以使用特定ID或空锚标记设置您的第一个元素...然后选择它并使用scrollIntoView


或者你还有两个选择。

1)动画scrollintoview()jQuery插件。

2)

function Scroll_To(elem, pos)
{
    var y = elem.scrollTop;
    y += (pos - y) * 0.3;
    if (Math.abs(y-pos) < 2)
    {
        elem.scrollTop = pos;
        return;
    }
    elem.scrollTop = y;
    setTimeout(Scroll_To, 40, elem, pos);   
}

这两个备选方案都可以在这篇文章中找到:scrollintoview animation