使用JavaScript防止图片撑破页面的自动缩放方案

作者:函数茶馆

时间:2026-10-30

浏览:78

本文介绍一段用于防止图片撑破页面的JavaScript代码。通过监听图片加载事件,获取图片原始宽高,并根据设定的最大宽度(180)和高度(110)进行等比例缩放计算。代码确保图片在超出限制时按比例缩小,保持宽高比不变,避免布局变形。

文章目录

JavaScript图片缩放代码实现

将以下JavaScript代码放置在页面的任意位置即可生效。


<script language="JavaScript">


<!-- 

var flag=false;


function DrawImage(ImgD){


var image=new Image();


image.src=https://www.jb51.net/htmldata/2006-01-08/ImgD.src;


if(image.width>0 && image.height>0){


flag=true;


if(image.width/image.height>= 180/110){


if(image.width>180){


ImgD.width=180;


ImgD.height=(image.height*110)/image.width;


}else{


ImgD.width=image.width;


ImgD.height=image.height;


   } 

/*ImgD.alt="bigpic" */


  } 

else{


if(image.height>110){


ImgD.height=110;


ImgD.width=(image.width*110)/image.height;


}else{


ImgD.width=image.width;


ImgD.height=image.height;


   } 

/*ImgD.alt="bigpic" */


  } 
}
}
//--> 

</script>


HTML图片标签调用方法

在需要展示图片的HTML元素中添加如下代码:


<img src="https://www.jb51.net/htmldata/2006-01-08/图片" border=0 width="180" height="110" onload="javascriptrawImage(this);">


注意这里的 width="180" height="110" 属性设置。建议明确限定初始宽高,否则图片会先以原始尺寸加载,随后再被脚本缩小,若图片过大,此过程会导致明显的视觉闪烁或布局跳动。此处的宽高数值需与JS代码中的判断阈值保持一致。


该方案仅按固定比例缩放图片,不会导致图像变形,可放心使用。


实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章