如何获得下载图像的宽度和高度?

时间:2010-12-13 09:13:48

标签: javascript jquery html

我想在下载图片后设置<div>的容器<img>的宽度和高度,怎么做?

3 个答案:

答案 0 :(得分:1)

将其隐藏在页面上,然后测量其宽度。有关如何测量隐藏对象宽度的详细解释,请参阅here(只需调用width()返回0)。

答案 1 :(得分:1)

function fn (div, url_path) {
  var img = new Image();

  img.onload = function () {
    div.style.width = img.width;
    div.style.height = img.height;
  };

  img.src = "url_path";
}

fn(document.getElementsByTagName('div')[0], 'http://some-url-to-image.com/1.jpg');

答案 2 :(得分:0)

除非您想要错误的结果,否则最好等待加载图像。

jQuery('#image').load(function() {
   var jThis = jQuery(this);
   var width = jThis.width();
   var height = jThis.height();
   yourFunction(width, height); //whatever you want to do with these values
   jThis.unbind('load'); //might be necessary if you only want this to happen once. Remove this if #image is a container for multiple uses.
})  

编辑1

您可以使用此代替yourFunction(),因为它更符合您的描述:

jThis.parents('#container').css({
   width: width,
   height: height
});