首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery:按比例调整图像大小()-method?

jquery:按比例调整图像大小()-method?
EN

Stack Overflow用户
提问于 2010-12-17 20:57:15
回答 1查看 710关注 0票数 1

我使用下面的代码来检查图像的原始大小:

代码语言:javascript
复制
        $(".post-body img").each(function() {  
            $(this).data('width', $(this).width());
            $(this).data('height', $(this).height());
        });

在此之后,我将所有图像的大小调整为父div .post-body的宽度。

代码语言:javascript
复制
var bw = $('.post-body').width();
$(".post-body img").each(function() {
        // Check the width of the original image size
        if (bw < $(this).data('width')) {
            $(this).removeAttr('height');
            $(this).attr( 'width', bw ); 
            //$(this).attr( 'height', height-in-ratio ); 
        }
});

这工作得很好!因此,我检查.post-body宽度是否小于图像的原始宽度,并将图像大小调整为与div相同的宽度。

然而,我认为这在Internet Explorer的一些老版本中是有缺陷的,因为我删除了图像的height属性。

如果存储了旧的宽度和高度,那么计算图像的比例高度的最简单方法是什么?我有一个新的宽度,我想计算适当的高度。

我似乎找不到一个简单的数学解决方案。

因此,我不想从图像中删除高度属性,但要计算成比例的高度。

谢谢你的小费。问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-17 21:02:44

代码语言:javascript
复制
var newHeight = newWidth / oldWidth * oldHeight;

newWidth / oldWidth提供了调整大小的比率。如果原始宽度为800,新宽度为400,则此比率为0.5。如果你的原始身高是600,你把它乘以这个比率,你会得到300。800x600与400x300的比率相同。

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

https://stackoverflow.com/questions/4470648

复制
相关文章

相似问题

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