如何在溢出隐藏div内滚动到某个当前不可见的元素?

我有一个溢出隐藏div中的元素列表。 因此,并非所有元素都可见。 现在,如果一个元素被激活,它应该在div中可见。

如何使用jQuery滚动到活动元素?

最后一个元素具有活动类只是方便。 它将动态切换。

var scrollToEl = $("div.element.active"); console.log(zoomToEl); 
  #main, #sidebar { height: 200px; } #wrapper { width: 190px; float: left; background: grey; overflow: auto; overflow-x: hidden; } #sidebar div.element { height: 150px; width: 150px; background-color: green; margin-bottom: 10px; } #sidebar div.element.active { background-color: red; } 
  

应该变得可见的元素:

 var scrollToEl = $("div.element.active"); 

您可以将包装器div的scrollTop设置为活动元素positiontop

 $("#wrapper").scrollTop($("#wrapper").scrollTop() + $("div.element.active").position().top); 

DEMO

也许你正在寻找scrollIntoView方法。

 scrollToEl[0].scrollIntoView(); 

演示: http //jsfiddle.net/yuFk5/14/