scrollTop到溢出滚动div中的活动元素

sup*_*ize 3 html javascript jquery

我有一个具体的问题.scrollTop.我有一个div特定的height和很多p标签内:

<div id="scroll">
   <p>name1</p>
   <p>name2</p>
   <!-- till name50 -->
</div>
Run Code Online (Sandbox Code Playgroud)

根据您点击的名称,它会获得一个类.active.我当时想要做的是滚动div,使名称位于顶部.所以我得到的是我可以在这样的动画函数中使用scrollTop:

$('#scroll').animate({scrollTop: value });
Run Code Online (Sandbox Code Playgroud)

但我怎么能得到var value.我试过了

var value = $('#scroll p').hasClass('active').position().top;
Run Code Online (Sandbox Code Playgroud)

但不知怎的,它不起作用.

一些帮助非常感谢.

Pat*_*son 5

您需要检查scrollTop()容器#scroll并将其添加回位置()arg.

var $scroll = $('#scroll');

$('p').click(function(e){
    var $this = $(this);
    $scroll.animate({
        "scrollTop": $this.position().top + $scroll.scrollTop()
    }, 1000);
});
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/yCEap/1/

要获得价值:

var value = $('#scroll').scrollTop();
Run Code Online (Sandbox Code Playgroud)