scrollTop()这真的做了什么吗?

时间:2014-04-22 03:05:50

标签: javascript

有没有人使用scrollTop()滚动容器内的div?关于这一点有很多问题。但是使用此代码,容器div不会滚动到所选元素。

        $('div',$('#scroll_1')).each(function(){
        var this_text = $(this).text();
        if ( this_text.search(/now/i) != -1 || this_text.search(/soon/i) != -1 ) {
            this_id = $(this).attr('id');
            var scroll_top = $(this).offset().top;
            alert('id '+this_id+' '+scroll_top);
            $('#scroll_1').scrollTop(scroll_top);
            return false;
        }           
        });

使用

脚本添加div
$('#scroll_1').append('<div id="'+id+'">div html</div>');

无论使用.position()。top还是.offset()。top,scroll_top都为0。该脚本不止一次被调用。每个调用对scroll_top都有不同的编号,但.scrollTop(scroll_top)不会滚动。

从容器顶部获取元素div的偏移量的正确方法是什么?在div中滚动元素似乎有很多问题。有办法吗?我更喜欢动画以外的方法。

1 个答案:

答案 0 :(得分:0)

scrollTop()不接受任何论据,你可能意味着这样做:

....
$('#scroll_1').animate({
    scrollTop: scroll_top
}, 2000);
....