您的位置:首页 > Web前端 > JavaScript

[转]图片自动缩放 js图片缩放

2008-11-07 14:57 323 查看
转自:http://hi.baidu.com/crystalhx/blog/item/deba9b2320274340ac34de09.html

图片自动缩放 js图片缩放
2008-03-27 10:48

图片自动缩放 js图片缩放

对于不指定大小的图片默认是以原大小显示,所以在不指定大小的图片上用onload事件触发脚本代码,在代码中判断图片的尺寸,如果超过指定值,将自动设置为允许的最大值。

具体步骤:

方法一:在图片加载完毕后用onload句柄触发执行脚本,重设图片的宽度为图片宽度和300两者的最小值。

代码示例: <img src="demo.gif" onload="if(this.width>300)this.width=300">

或者

<img src="demo.gif" onload="this.width=Math.min(this.width,300)">

方法二:按比例缩小。只需要把js加在head之间,再在body处加入onload="ResizeImages();"代码。

<script language="JavaScript">

<!--

function ResizeImages()

{

var myimg,oldwidth;

var maxwidth=180; //缩放系数

for(i=0;i <document.images.length;i++){

myimg = document.images[i];

if(myimg.width > maxwidth)

{

oldwidth = myimg.width;

myimg.width = maxwidth;

myimg.height = myimg.height * (maxwidth/oldwidth);

}

}

}

//-->

</script>



<script language="JavaScript">

<!--

//图片按比例缩放

var flag=false;

function DrawImage(ImgD,iwidth,iheight){

//参数(图片,允许的宽度,允许的高度)

var image=new Image();

image.src=ImgD.src;

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

flag=true;

if(image.width/image.height>= iwidth/iheight){

if(image.width>iwidth){

ImgD.width=iwidth;

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

}else{

ImgD.width=image.width;

ImgD.height=image.height;

}

ImgD.alt=image.width+"×"+image.height;

}

else{

if(image.height>iheight){

ImgD.height=iheight;

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

}else{

ImgD.width=image.width;

ImgD.height=image.height;

}

ImgD.alt=image.width+"×"+image.height;

}

}

}

//-->

</script>

调用:<img src="images/toplogo.gif" onload="javascript:DrawImage(this,100,100)">

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: