jquery .width()chrome和safari问题

前端之家收集整理的这篇文章主要介绍了jquery .width()chrome和safari问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我将css的图像高度设置为一定值,宽度会自动修改,以保持宽高比.我使用.width() jquery函数获取图像大小后的图像宽度.在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.
    });
});

图片的css:

#poze img{
    height:80px;
    width:auto;
    border:0px;
    padding-right:4px;    
}

解决方法

在document.ready(您正在使用的)中,图像可能被加载,也可能不会被加载,如果它们不在缓存中,那么它们可能没有加载.相反,当加载图像时使用 window.onload event,如下所示:
var total=0; 
$(window).load(function() {
  $('.thumb').each(function() {
    total += $(this).width();
  });
});

猜你在找的jQuery相关文章