我想在下载图片后设置<div>
的容器<img>
的宽度和高度,怎么做?
答案 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.
})
您可以使用此代替yourFunction()
,因为它更符合您的描述:
jThis.parents('#container').css({
width: width,
height: height
});