放置可滚动div中心视图的子项

时间:2012-04-18 10:07:27

标签: javascript html

我在屏幕上的某个地方有一个可滚动的div。

我在其中的某个地方有一个孩子。

如何滚动div以将此孩子放在可见区域的中心?

(我如何确定div的可见宽度和高度,以及如何滚动以将矩形控件置于此中心?)

2 个答案:

答案 0 :(得分:0)

element.scrollIntoView()可能就是你要找的东西。

http://jsfiddle.net/a9s2G/

scrollIntoView docs

答案 1 :(得分:0)

如果您使用jQuery,可以尝试使用scrollTo插件。

在纯粹的js中,这可以使用element.scrollTop来完成。您需要在<div>内获取元素的位置,然后使用该值滚动主div。

要计算内部元素位置,您需要使用offsetTopoffsetLeft属性来获取与父元素相关的偏移顶部和左侧属性。

要使元素居中,您可能还需要使用element.scrollLeft