解决图片加载失效的问题

解决图片加载失效的问题

作者:LAMP小白  点击:1695  发布日期:2012-11-23 23:42:00  返回列表

JS需要一个功能,当图片加载时,获得他的宽高,动态的去改变CSS样式


之前这样写,发现有时会失效,图片加载了但是CSS的样式仍然是0

bgUrl = bgUrl.replace('url(', '').replace(')', '').replace(/"/g, "").replace(/'/g, "");
            bgObj.src = bgUrl;
            $(bgObj).load(function(){
                alert(bgObj.width);
                $('#mioTdCordBg').css({width:bgObj.width, height:bgObj.height});
                BG_INIT_WIDTH = parseInt(bgObj.width);
                BG_INIT_HEIGHT = parseInt(bgObj.height);
                $('#miobgwidth').val(bgObj.width);
                $('#miobgheight').val(bgObj.height);
                changeTargetSizeInfo('bg', BG_INIT_WIDTH, BG_INIT_HEIGHT);
            })


困惑了一会,最后发现其实是因为有缓存了,加载速度非常快,导致load事件还没解析完成,浏览器就执行到下面了

改写为:

$(bgObj).load(function(){
                alert(bgObj.width);
                $('#mioTdCordBg').css({width:bgObj.width, height:bgObj.height});
                BG_INIT_WIDTH = parseInt(bgObj.width);
                BG_INIT_HEIGHT = parseInt(bgObj.height);
                $('#miobgwidth').val(bgObj.width);
                $('#miobgheight').val(bgObj.height);
                changeTargetSizeInfo('bg', BG_INIT_WIDTH, BG_INIT_HEIGHT);
            })
            bgObj.src = bgUrl;

问题解决



上一篇:解决SAE下不能写文件的问题 下一篇:快递查询API
0