首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

关于图片加载缩放的有关问题

2013-02-27 
关于图片加载缩放的问题img alt关于图片加载缩放的有关问题 srchttp://i2.itc.cn/20130220/2d3f_a20e4149_f596_c868

关于图片加载缩放的问题


<img alt="关于图片加载缩放的有关问题" src="http://i2.itc.cn/20130220/2d3f_a20e4149_f596_c868_3fa4_40924923debd_1.jpg" onload="imgResize(this);" id="imgid" />


由于图片有的可能比较大,因此当onload执行的时候获取不到img元素的宽高,导致宽高为0
最后执行缩放函数imgResize的时候导致执行不成功

现在想知道要怎么延迟执行onload来让图片加载完成后获取到图片宽高。。。这样就可以正常执行缩放了
[解决办法]
function imgResize(imgObj) {
    //setTimeout("", 3000);
    var image = new Image();
    image.src = imgObj.src;
 
    if (image.complete) {
        alert(image.complete); 
    }
alert(this) // window?
    alert("width: " + imgObj.width + " height: " + imgObj.height);
}

[解决办法]
引用:
引用:
引用:

XML/HTML code?123<div class="img-box col2">            <img alt="关于图片加载缩放的有关问题" src="http://i2.itc.cn/20130220/2d3f_a20e4149_f596_c868_3fa4_40924923debd_……


锅,请问你知道this.width的this指向的是哪个吗?你传进来的imgObj已经可以用了,为什么你还要new Image呢。如果非要new,请把alert("width: " + this.width + " height: " + this.height);这些代码放到image的onload事件中。


function imgResize(imgObj) {
    //setTimeout("", 3000);
    var image = new Image();
    image.src = imgObj.src;
    image.onload = function(){
alert("width: " + this.width + " height: " + this.height);
    }    
}

热点排行