如何在溢出隐藏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
设置为活动元素position
的top
。
$("#wrapper").scrollTop($("#wrapper").scrollTop() + $("div.element.active").position().top);
DEMO
也许你正在寻找scrollIntoView
方法。
scrollToEl[0].scrollIntoView();
演示: http : //jsfiddle.net/yuFk5/14/