如何在jQuery中将图像调整为一致的宽高比。例如,设置最大高度并正确调整宽度。谢谢。

最佳答案

您可以手动计算

即:

function GetWidth(newHeight,orginalWidth,originalHeight)
{
if(currentHeight == 0)return newHeight;
var aspectRatio = currentWidth / currentHeight;
return newHeight * aspectRatio;
}

确保为图像使用原始值,否则图像会随着时间推移而降低。

编辑:示例jQuery版本(未测试)
jQuery.fn.resizeHeightMaintainRatio = function(newHeight){
    var aspectRatio = $(this).data('aspectRatio');
    if (aspectRatio == undefined) {
        aspectRatio = $(this).width() / $(this).height();
        $(this).data('aspectRatio', aspectRatio);
    }
    $(this).height(newHeight);
    $(this).width(parseInt(newHeight * aspectRatio));
}

09-17 15:09