如何在我的情况下滚动div?

时间:2013-12-16 03:58:42

标签: jquery html css

我正在尝试根据用户点击的链接滚动我的div内容。

http://jsfiddle.net/BPB7z/11/

当我没有向下滚动时,我的代码工作正常。但是,如果我向下滚动并单击链接,则内容将滚动到顶部而不是当前顶部位置。

例如。

        //works fine without scrolling the windows.
 ------------------------------------ <- top of my browser
    test1    | test1
    test2    |
    test3    |
             |
             |
             |
             | test2

如果我向下滚动窗口并点击测试9链接。测试9 div将隐藏为

-------------------------------   <- top of my browser.
test9     | 
test10    |
test11    |test10
test12    |
          |
          |
          | 

有人可以帮我解决这个问题吗?非常感谢!

1 个答案:

答案 0 :(得分:1)

我希望我能正确理解你的问题。如果是这样,这个小更新将起作用:

http://jsfiddle.net/BPB7z/13/

$('#items').animate({
   scrollTop: $('#'+id+'-test').offset().top - $(window).scrollTop() + $('#items').scrollTop()
}, 700);  

通过减去$(window).scrollTop()值,我们找到动画的真实位置,同时考虑窗口的当前滚动位置。