在特定操作中滚动到div中的div

时间:2013-04-14 13:18:31

标签: javascript jquery

在JavaScript / jQuery中调用时是否可以自动滚动到特定的div?

我可以使用$('div[compid="' + compid + '"]')来获取正确的div,但我需要强制将该特定compid的div滚动到屏幕上。

$(document).delegate(".heading",'click',function(){
    $(this).next().slideToggle('slow');
});
    
<div id="listings">
    <div class="heading" compid="80" usedspec="33"><div class="content">content in here</div></div>
    <div class="heading" compid="81" usedspec="34"><div class="content">content in here</div></div>
    <div class="heading" compid="82" usedspec="35"><div class="content">content in here</div></div>
    <div class="heading" compid="83" usedspec="36"><div class="content">content in here</div></div>
    <div class="heading" compid="84" usedspec="37"><div class="content">content in here</div></div>
</div>

1 个答案:

答案 0 :(得分:1)

您可以使用offset方法。

var top = $('div[compid="' + compid + '"]').offset().top;
$('html, body').animate({scrollTop: top}, 500);

http://jsfiddle.net/aNBMG/

请注意,compidusedspec不是有效的属性,您可以使用HTML5 data-*属性。