经测试代码如下:
<script>
/**
* 控制图片大小
*
* @param
* @arrange (编程之家) jb51.cc
**/
function AutoResizeImage(maxWidth,maxHeight){
var objImg = document.getElementById(operImg);
var img = new Image();
img.src = objImg.src;
var hRatio;
var wRatio;
var Ratio = 1;
var w = img.width;
var h = img.height;
wRatio = maxWidth / w;
hRatio = maxHeight / h;
if (maxWidth ==0 && maxHeight==0){
Ratio = 1;
}else if (maxWidth==0){//
if (hRatio<1) Ratio = hRatio;
}else if (maxHeight==0){
if (wRatio<1) Ratio = wRatio;
}else if (wRatio<1 || hRatio<1){
Ratio = (wRatio<=hRatio?wRatio:hRatio);
}
if (Ratio<1){
w = w * Ratio;
h = h * Ratio;
}
objImg.height = h;
objImg.width = w;
}
</script>
</head>
<body>
<img src=1111.jpg border=0 alt=534 X 800 id=operImg/>
<input type=button value=缩放至宽100px,等比例压缩 onclick=AutoResizeImage(100,0)/>
<input type=button value=缩放至300px,等比例压缩 onclick=AutoResizeImage(300,0)/>
<input type=button value=原图 onclick=AutoResizeImage(0,0)/>
</body>
</html>
重点js:
/**
* 控制图片大小
*
* @param
* @arrange (编程之家) jb51.cc
**/
function AutoResizeImage(maxWidth,maxHeight){
var objImg = document.getElementById(operImg);
var img = new Image();
img.src = objImg.src;
var hRatio;
var wRatio;
var Ratio = 1;
var w = img.width;
var h = img.height;
wRatio = maxWidth / w;
hRatio = maxHeight / h;
if (maxWidth ==0 && maxHeight==0){
Ratio = 1;
}else if (maxWidth==0){//
if (hRatio<1) Ratio = hRatio;
}else if (maxHeight==0){
if (wRatio<1) Ratio = wRatio;
}else if (wRatio<1 || hRatio<1){
Ratio = (wRatio<=hRatio?wRatio:hRatio);
}
if (Ratio<1){
w = w * Ratio;
h = h * Ratio;
}
objImg.height = h;
objImg.width = w;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。