如何确定浮动元素是否已包裹

时间:2014-12-05 20:16:31

标签: javascript jquery

我有4个div。所有这些都浮动:左;例如,它们可以是:

  

[div id = 1] [div id = 2] [div id = 3] [div id = 4]


  

[div id = 1] [div id = 2] [div id = 3]
[div id = 4]

在第二种情况下,最后一个div放在下一行,因为在父级中没有空格。如何检查id = 4的div是否为下一行。纯js或jQuery。请帮忙。

1 个答案:

答案 0 :(得分:5)

没有简单的方法,你必须检查位置。将元素A的底值与元素B的最高值进行比较是最安全的方法,因为可能发生错误并且顶值不总是相同的。

此代码会检查div 4是否在div 1以外的其他行:

var a = $('#1'), b = $('#4');

var
posA = a.offset().top + a.height(),
posB = b.offset().top;

if(posB > posA){
    //Div 4 is in an other line.
}