position()和表格
这怎么可能不警告0
(相反,它警告50
)?
我需要相对于桌子的td位置
http://jsfiddle.net/vxVCE/
HTML:
linje 1 linje 2
JS:
var elm = $('#td1'); var position = elm.position(); alert(position.top);
编辑:我需要相对于表格的tr位置:)
添加position: relative;
到桌子。 这样做会使其警报0.否则,它会找到相对于文档的位置。
因为它不在顶部 – 因此它不是零
身体的衬垫为10px
。
桌子上方的div高度为40px
。
因此它警告“ 50
”( 10 + 40 = 50
)
@Neal已经很好地解释了它给出50的原因。这是第二部分:
要获取到表的位置,从td
顶部减去表的顶部:
alert(position.top - $('#td1').closest('table').position().top);
演示: http : //jsfiddle.net/mrchief/vxVCE/1/
注意:根据您的HTML / CSS,您可能必须使用表的offset
。
alert(position.top - $('#td1').closest('table').offset().top);