如何相对于其他元素直接检索位置数组([left,top])? 我以为我可以做下面的事情:
var newPos = $.position({
my: "left top",
at: "right top",
of: $(ElementPositionedAgainstTo)
});
但它给了我错误。
所以我只做像创建隐藏div的解决方法,使用隐藏div对'ElementPositionedAgainstTo'做位置方法,然后获取隐藏div的位置。
function getPopupPosition (parent_el) {
var jDiv = $("<div id='hidden_div'></div>");
jDiv
.appendTo("body")
.css("position", "absolute")
.position({
my: "left top",
at: "right top",
of: $(parent_el)
});
var thePosition = jDiv.position();
jDiv.remove();
return thePosition;
};
有没有更好的方法呢?
答案 0 :(得分:0)
jQueryUI的.position()实用程序声明:
jQuery UI .position()方法允许您相对于窗口,文档,另一个元素或者 光标/鼠标,无需担心偏移的父母。
注意: jQuery UI不支持定位隐藏元素。
解决方法是改为使用visibility:hidden,获取位置,然后快速隐藏div。