leo列

导航

取得图片的宽和高

在WEB开发的实际过程中经常遇到加载入的图片,而有些操作需要知道这些加载进来的图片的宽和高,用JQUERY的$("img").height();或者$("img").width();并不是所有的浏览器都能取到,也试过javascript的 

function getImgProperty(elem,property)
{
     var img = new Image();
     img.src=elem.src;
     var w,h;
     w=img.width;
     h=img.height;
     return "width:"+w+"height:"+h;
}

但是还是有些能取到有些不能

function getImgProperty(elem,property)
{
     var img = new Image();
     img.onload=function()
     {
           var w,h;
           w=img.width;
           h=img.height;
            return "width:"+w+"height:"+h;
     }
     img.src=elem.src;                                    //这个img.src一定要在img.onload之后,应该先添加事件,因为定义了img.src就开始下载图片了,下载完成在onload事件之前,这在IE6,IE7可能不是那么很好地触发onload事件
}

这样就能取到了,,原因是取之前确保图片加载了,因为没有加载的图片是不能取到宽和高的。

 

今天又看到一种方法:

var img = document.getElementById(imgID);
var imgWidth=img.offsetWidth;
var imgHeight=img.offsetHeight;

这个是图片在文档中所占的内容的大小

posted on 2012-08-11 23:14  leo列  阅读(167)  评论(0编辑  收藏  举报