首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据.load()中的宽度获取图像高度

问根据.load()中的宽度获取图像高度
EN

Stack Overflow用户
提问于 2015-05-28 13:41:00
回答 1查看 222关注 0票数 0

在加载图像本身之前,我需要获取图像的高度和宽度。因此,我使用jquery .load()方法。

代码语言:javascript
复制
$('<img />').attr('src',someURL).load(function(){
  console.log(this.width);
  console.log(this.height);
})

但问题是,我需要根据固定宽度的高度。假设图片大小为400*417,我需要的是200而不是400的高度。为此,我补充说

代码语言:javascript
复制
$('<img />').attr({
'src':someURL,
'width':200}).load(function(){
  //Get height and width
})

但是上面的代码又给了我417的高度,而不是200的宽度。我正在寻找js/jquery/angualrjs。请帮帮忙。

(预先谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-28 13:47:28

一点数学就行了。一旦你得到实际的图像尺寸,应用你的比率得到你想要的高度。

例如:

代码语言:javascript
复制
$('<img />').attr('src',someURL).load(function(){
  console.log(this.width); // prints out 400
  console.log(this.height); // prints out 417

  var widthIWant = 200;

  var heightIWant = this.height * widthIWant / this.width; // Gives you 208.5

})
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30508284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档