6

offsetTop我的问题相当简单:与父元素(而不是窗口顶部)相比,如何找到子元素的?

的定义offsetTop声明该属性将返回子元素从 顶部偏移的值offsetParent,但在此 JSFiddle 中似乎并非如此:http: //jsfiddle.net/h5KBK/

我的目标是从可滚动 div 的顶部而不是窗口顶部找到粗体橙色文本的偏移量。有没有办法在不计算上述元素、填充、边距等的高度并从offsetTop?

我正在寻找仅 JavaScript 的解决方案。请不要使用 jQuery。

4

2 回答 2

8

根据定义offsetTop,返回对象相对于其offsetParent元素顶部的顶部位置,以像素为单位。

现在offsetParent需要是一个位置不是 static 的元素。如果您scroll在小提琴中更改元素的位置属性,我会得到 1012 的值,而不是没有位置属性的 1110。

于 2013-01-01T04:15:24.903 回答
3

实际上,我做了更多的研究并找到了答案。offsetParent必须有一个指定的或position:absolute声明position:relative,如这个 JSFiddle 所示:http: //jsfiddle.net/h5KBK/1/

于 2013-01-01T04:16:18.077 回答