offsetParent()vs offsetParent

时间:2011-03-13 16:47:22

标签: jquery

jQuery cookbook的第141页指出,jQuery的offsetParent方法提供了标准JavaScript offsetParent DOM节点属性的替代。

问:如何使用JavaScript offsetParent属性重写以下内容?

var $foo = jQuery('#foo');
var $fooOffsetParent = $foo.offsetParent();

3 个答案:

答案 0 :(得分:2)

使用.get()从jQuery对象访问底层DOM元素。

var $foo = jQuery('#foo'),
    foo = $foo.get(0),
    fooOffsetParent = foo.offsetParent;

答案 1 :(得分:1)

必须可以使用vanilla Javascript方法来选择元素。

document.getElementById("foo").offsetParent.offsetTop
document.getElementById("foo").offsetParent.offsetLeft

答案 2 :(得分:1)

这应该是你要找的。

var $foo = document.getElementById('foo');
var $fooOffsetParent = foo.offsetParent;

这使得jQuery选择器无需通过id获取元素。如果你还想使用jQuery ..

var $foo = $('#foo');
var $fooOffsetParent = foo.get(0).offsetParent;