jquery .width()chrome和safari问题

Bog*_*dan 13 safari jquery google-chrome

我已经在css中将图像的高度设置为某个值,并且宽度会自动修改以保持纵横比.我正在使用.width()jquery函数在css调整图像大小后获取图像的宽度.在Firefox和Internet Explorer中,这很有效,但在chrome和safari中,每个图像返回的宽度始终为0.我正在使用的代码如下:

var total=0; 
var widthdiv=0;
$(function(){
    $('.thumb').each(function(){
       widthdiv=$(this).width();
       total+=widthdiv;
       alert(widthdiv); //added so i can see what value is returned.
    });
});
Run Code Online (Sandbox Code Playgroud)

和图像的CSS:

#poze img{
    height:80px;
    width:auto;
    border:0px;
    padding-right:4px;    
}
Run Code Online (Sandbox Code Playgroud)

Nic*_*ver 37

document.ready(您当前使用的)图像可能加载也可能不加载,如果它们不在缓存中,则它们可能加载.改用window.onload事件的图像时,加载,就像这样:

var total=0; 
$(window).load(function() {
  $('.thumb').each(function() {
    total += $(this).width();
  });
});
Run Code Online (Sandbox Code Playgroud)