Javascript,DOM:需要查找可滚动元素内的空间

问题描述:

我有一个带有孩子的可滚动元素。在这个孩子里面(没有预设的宽度或高度)是一组绝对定位的元素,可以有任意的宽度,高度,左侧和顶部值。父元素能够滚动以适应查看这些绝对定位元素的位置,但我无法检索此父元素中有多少可滚动空间。我该怎么做呢?Javascript,DOM:需要查找可滚动元素内的空间

仅供参考,下面是我的一些CSS的:

.ruler_container { 
    max-width: 620px; 
    max-height: 400px; 
    overflow: auto; 
} 

.ruler { 
    position: relative; 
} 

    .inner_elem { 
     position:  absolute; 
    } 

的宽度,高度,左,最高值inner_elem s为任意的。

+0

添加你的代码会很有帮助 – William 2010-12-11 17:55:10

+2

如果内部元素是绝对定位的,那么这个问题确实没有意义。一些容器元素(比如你提到的那个“孩子”)必须是“位置:相对的”来“捕捉”绝对定位的元素。然而,绝对定位的元素超出了布局流程(按照定义),所以我不明白你将如何得到任何内容边界来环绕它们。 – Pointy 2010-12-11 17:56:26

+0

你的意思是没有办法获得家长的可滚动空间? – Hamster 2010-12-11 18:13:47

嗯,我发现我的答案在挖掘DOM后:scrollWidth和scrollHeight属性。

我的代码和DOM结构现在非常复杂,所以除了上述细节外,很难使这个问题更加准确。