在Resize上设置最大高度

Setting a max height onResize

本文关键字:高度 设置 Resize      更新时间:2023-11-02

我有一个脚本,它使用这个函数来调整图像onLoad和onResize的大小:

/**
 * Calculates the display width of an image depending on its display height when it is resized.
 * @param displayHeight the resized height of the image
 * @param originalHeight the original height of the image
 * @param originalWidth the original width of the image
 * @return the display width
 */
function getDisplayWidth(displayHeight, originalHeight, originalWidth){
    var ratio = originalHeight/displayHeight,
        res = Math.round(originalWidth/ratio) || 1000;
    return res;
}

但我不希望图像高度超过800px,事实上,它甚至可以固定在800×530px的大小。我试图将一个固定值返回给res,但似乎不起作用。

谢谢!

您只需要在函数中添加一个if语句。。。

/**
 * Calculates the display width of an image depending on its display height when it is resized.
 * @param displayHeight the resized height of the image
 * @param originalHeight the original height of the image
 * @param originalWidth the original width of the image
 * @return the display width
 */
function getDisplayWidth(displayHeight, originalHeight, originalWidth){
    if (displayHeight > 800) displayHeight = 800;
    var ratio = originalHeight/displayHeight,
        res = Math.round(originalWidth/ratio) || 1000;
    return res;
}

设置宽度时,它将自动将高度设置为正确的宽度/高度比值。您还可以通过将变量传递给getDisplayWidth来获得高度,然后当函数返回时,该变量将具有最大高度条件定义的高度。