月度归档:2014年09月

JS控制图片显示的大小(图片等比例缩放)

代码

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>最新javascript自动按比例显示图片,按比例压缩图片显示</title>
<script type="text/javascript">
function AutoResizeImage(maxWidth,maxHeight,objImg){
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>
<br />
原图显示(534 X 800)<br />
onload="AutoResizeImage(0,0,this)<br />
<a href="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(0,0,this)" alt="534 X 800"/></a><br/><br />
1.按宽度250压缩,不限制高度 按比例压缩<br />
onload="AutoResizeImage(250,0,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(250,0,this)"  alt="250 X 374"/></a><br /><br />
2.按高度250压缩,不限制宽度 按比例压缩<br />
onload="AutoResizeImage(0,250,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(0,250,this)"  alt="166 X 250"/></a><br /><br />
3.按高度250宽度250 按比例压缩<br />
onload="AutoResizeImage(250,250,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(250,250,this)"  alt="200 X 300"/></a><br /><br />
4.高宽不等比例压缩 (400 X 512),此时高度不变,会自动按高度的比例压缩。<br />
onload="AutoResizeImage(400,512,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(400,512,this)"  alt="341 X 512"/></a><br /><br />
5.高宽不等比例压缩 (300 X 600),此时宽度不变,会自动按宽度的比例压缩。<br />
onload="AutoResizeImage(300,600,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/421506/o_09925c7bcead8c60f683298dacf497a6.jpg" border="0" width="0" height="0" onload="AutoResizeImage(300,600,this)"  alt="300 X 449"/></a><br /><br />
6.如果图片本来的高度和宽度小于压缩的最大高度和宽度,则不会拉大显示图片(按原图显示)<br />
原图444 x 207,压缩为 500 x 600,将保持原图显示<br />
onload="AutoResizeImage(500,600,this)"<br />
<a href="http://blog.csdn.net/feng_sundy/archive/2008/06/19/2566028.aspx" target="_blank"><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/feng_sundy/242776/o_20070410_b7409cd284a0f799a357uePcEFa6ty0X.jpg" border="0" width="0" height="0" onload="AutoResizeImage(500,600,this)"  alt="444 X 207"/></a><br /><br />
</body>
</html>

效果图:

效果图:

兼容 IE,Firefox 的图片自动缩放 CSS

方法一

.Image {  
    max-width:600px;height:auto;cursor:pointer;  
    border:1px dashed #4E6973;padding: 3px;  
    zoom:expression( function(elm) {  
        if (elm.width>560) {  
            var oldVW = elm.width; elm.width=560;  
            elm.height = elm.height*(560 /oldVW); 
        } 
        elm.style.zoom = '1'; 
    }(this));
} 

方法二

.thumbImage {max-width: 100px;max-height: 100px;} /* for Firefox & IE7 */
* html .thumbImage { /* for IE6 */
width: expression(this.width > 100 && this.width > this.height ? 100 : auto);
height: expression(this.height > 100 ? 100 : auto);

方法三

<div id="pic"><img src=http://xxxxx.com/images/zidian_s.gif /></div>
<script language="javascript">
var cfg = {
 maxWidth  :  480,
 maxHeight  :  480
} ;

lstImg = document.getElementById('pic').getElementsByTagName('img'); 
for (var i = 0; i < lstImg.length; i++) {
 var tmpW, tmpH;
 var img = lstImg[i];
 tmpW = img.width;
 tmpH = img.height;
 if (tmpW > cfg.maxWidth && tmpH > cfg.maxHeight) {
  if (tmpW / cfg.maxWidth > tmpH / cfg.maxHeight) {
   img.width = cfg.maxWidth;
   img.height = cfg.maxHeight * (cfg.maxWidth / tmpW);
  }
 }
 else {
  if (tmpW > cfg.maxWidth) {
   img.width = cfg.maxWidth;
   img.height = cfg.maxHeight * (cfg.maxWidth / tmpW);
  }
  else if (tmpH > cfg.maxHeight) {
   img.height = cfg.maxHeight;
   img.width = cfg.maxWidth * (cfg.maxHeight / tmpH);
  }
 }
}

</script>

javascript获取url参数

function GetUrlParms()    
{
    var args=new Object();   
    var query=location.search.substring(1);//获取查询串   
    var pairs=query.split("&");//在逗号处断开   
    for(var   i=0;i<pairs.length;i++)   
    {   
        var pos=pairs[i].indexOf('=');//查找name=value   
            if(pos==-1)   continue;//如果没有找到就跳过   
            var argname=pairs[i].substring(0,pos);//提取name   
            var value=pairs[i].substring(pos+1);//提取value   
            args[argname]=unescape(value);//存为属性   
    }
    return args;
}



function settab()
{
    var args = new Object();
    args = GetUrlParms();

    var ParametrUrl=args["act"];
    switch(ParametrUrl)
    {
       case "note":
            document.getElementById("t1").className="tabnosel";
            document.getElementById("t2").className="tabsel";
       break;
      default:
         break;
      break; 
    }

}

兼容IE,Firefox 的图片自动缩放CSS及expression用法

用CSS按比例缩放图片

CSS图片自动适应大小防止表格被撑开或div层被撑开的多种方法css实现按比例限制图片的显示大小。css ie中最小(最大)高度(宽度) 的处理方法用CSS如何控制网页中图片自适应大小用CSS来控制图片显示大小用CSS控制图片自适应大小的方法

兼容IE、Firefox 

img { max-width:200px; max-height:200px; }
*html img { width: expression(this.width > 200 && this.width > this.height ? 200 : auto); height: expression(this.height > 200 ? 200 : auto); }

 IE7 FF支持max-width/max-height,IE6不支持,FF不支持expression,IE支持。
2. expression例子
鼠标经过时改变颜色 

input {star : expression(onmouseover=function(){this.style.backgroundColor=”#FF0000″},onmouseout=function(){this.style.backgroundColor=”#FFFFFF”}) }
<a href=”link1.htm” onfocus=”this.blur()”>link1</a>去除链接虚框
img {margin-top: expression(( 150 - this.height ) / 2);}

 图片在容器里垂直居中显示,150是容器高