在$(window).resize处理程序中获取不正确的元素高度()

时间:2013-08-21 12:03:58

标签: javascript jquery css dom height

我在div.height()处理程序中收到错误的$(window).resize

伪代码:

var div = $('#someDiv');

div.html('');
div.css("height", "auto");

div.append( '<img src="1.jpg" style="float:left;" height="100" width="100"></img>' );
div.append( '<img src="2.jpg" style="float:left;" height="100" width="100"></img>' );
div.append( '<img src="3.jpg" style="float:left;" height="100" width="100"></img>' );
div.append( '<img src="4.jpg" style="float:left;" height="100" width="100"></img>' );
...

// I am loading the next after previous is loaded (onload)
// after last image is loaded:
console.log( div.height() );  // height is correct


$(window).resize( function(){
   console.log( div.height() );  // height is incorrect
});

在获取之前,DOM是否有可能不更新div的高度?

如果答案是肯定的,是否有一些我可以听的事件?

// EDIT

非常感谢@adeneo为jsfiddle。

我添加了resize处理程序,看起来它在我的桌面chrome中工作正常。

http://jsfiddle.net/eUUrh/2/

0 个答案:

没有答案