0

在 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>
4

1 回答 1

1

你可以使用offset方法。

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

http://jsfiddle.net/aNBMG/

请注意compidusedspec不是有效属性,您可以使用 HTML5data-*属性代替。

于 2013-04-14T13:22:50.877 回答