用jquery查找div底部的位置
我有一个div,并希望find底部的位置。 我可以像这样findDiv的顶级位置,但是我如何find最底层的位置呢?
var top = $('#bottom').position().top; return top;
将outerheight添加到顶部,并且具有相对于父元素的底部:
var $el = $('#bottom'); //record the elem so you don't crawl the DOM everytime var bottom = $el.position().top + $el.outerHeight(true);
使用绝对定位的元素或相对于文档进行定位时,您需要使用偏移量进行评估:
var bottom = $el.offset().top + $el.outerHeight(true);
正如trnelson所指出的那样,这100%的时间都不起作用。 要使用此方法定位元素,还必须考虑偏移量。 有关示例,请参阅以下代码。
var bottom = $el.position().top + $el.offset().top + $el.outerHeight(true);
编辑:这个解决scheme现在也在原来的答案。
接受的答案是不完全正确的。 你不应该使用position()函数,因为它是相对于父类。 如果您正在进行全球定位(在大多数情况下?),您应该只添加外部高度的偏移顶部,如下所示:
var actualBottom = $(selector).offset().top + $(selector).outerHeight(true);
到目前为止的答案将工作..如果你只想使用高度没有填充,边界等
如果您想要考虑填充,边框和边距,则应使用.outerHeight
。
var bottom = $('#bottom').position().top + $('#bottom').outerHeight(true);
var bottom = $('#bottom').position().top + $('#bottom').height();
底部是top
+ outerHeight
height
,而不是height
,因为它不包括边距或填充。
var $bot, top, bottom; $bot = $('#bottom'); top = $bot.position().top; bottom = top + $bot.outerHeight(true); //true is necessary to include the margins
var top = ($('#bottom').position().top) + ($('#bottom').height());