我有40个带有.myImage类的图像 与css:
.myImage{
position:absolute;
}
在jQuery中我正在做:
$('.myImage').each(function(){
alert($(this).height());
});
我对前15张图像有一个很好的高度,但是在最后一张图像之前警报为0。 而且我很确定每个图像都会显示,因为我用其他jQuery脚本给每个图像一个位置,它们都显示出来。
为什么15张图像后警报为0?
答案 0 :(得分:6)
等待加载所有图像。 DOM将准备就绪,但图像将无法加载。使用window.load
事件代替jQuery的document.ready
window.load = function(){
$('.myImage').each(function(){
alert($(this).height());
});
};
答案 1 :(得分:1)
或等待加载特定图片
$(document).ready(function(){
var images = $('.myImage');
images.one('load', function (){
images.each(function(){
alert($(this).height());
})
}).each(function() {
if(this.complete) $(this).load();
});
});