什么是jQuery相当于原型的定位偏移量



(据我所知)jQuery没有提供本机解决方案来查找元素相对于其定位父元素的偏移量。如何让jQuery为我提供元素定位偏移的坐标

使用jQuery的offsetParent()方法,我们可以获得当前元素所在的元素。然后我们可以比较这两个偏移并提取坐标,以获得我们正在寻找的信息。下面的方法将返回一个具有"top"one_answers"left"属性的对象。

// jQuery equivalent to Prototype's positionedOffset
(function($) {
    $.fn.positionedOffset = function() {
        // get viewport offset for our main element
        var coords = $(this).offset();
        // get parent and parent viewport offset 
        var parent = $(this).offsetParent();
        var parentCoords = $(parent).offset();
        // do some math to calculate relative offset
        var diff_left = coords.left - parentCoords.left;
        var diff_top = coords.top - parentCoords.top;
        // return values
        var offsetCoords = {
            left: diff_left,
            top: diff_top
        }
        return offsetCoords;
    };
})(jQuery);

最新更新