`
jackleechina
  • 浏览: 587682 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

在限定范围内实现图片自动缩放

 
阅读更多
一)方法1
<style type="text/css">
.Image-max-width {   

    max-width:200px;height:auto;cursor:pointer;   

    border:1px dashed #4E6973;padding: 3px;   

    zoom:expression( function(elm) {   

        if (elm.width>2000) {   

            var oldVW = elm.width; elm.width=200;   

            elm.height = elm.height*(200 /oldVW);  

        }  

        elm.style.zoom = '1';  

    }(this)); 

}
.Image-max-height{   

    max-height:200px;width:auto;cursor:pointer;   

    border:1px dashed #4E6973;padding: 3px;   

    zoom:expression( function(elm) {   

        if (elm.height>2000) {   

            var oldVH = elm.height; elm.height=200;   

            elm.width = elm.width*(200 /oldVH);  

        }  

        elm.style.zoom = '1';  

    }(this)); 

}
</style>


<script type="text/javascript">
	function Wa_SetImgAutoSize(img) {
	    //var img=document.all.img1;//获取图片
	    var MaxWidth = 200; //设置图片宽度界限
	    var MaxHeight = 200; //设置图片高度界限
	    var HeightRatio = img.offsetHeight / MaxHeight; //设置高宽比
	    var WidthRatio = img.offsetWidth / MaxWidth; //设置宽高比
	  
	    if (HeightRatio > WidthRatio) {
		    alert("t");
	        $(img).addClass("Image-max-height");
	    } 
	    if (HeightRatio < WidthRatio) {
	    	 alert("tt");
	        $(img).addClass("Image-max-width");
	    } 
	}
</script>



调用方法:
<div align=center style="width:200px;height:200px;" ><img  src ="图片地址" onload='Wa_SetImgAutoSize(this);'/></div>

参考:http://www.cnblogs.com/MaxIE/archive/2008/03/27/1123881.html
二)方法2

<script type="text/javascript">
	function Wa_SetImgAutoSize(img) {
	    //var img=document.all.img1;//获取图片
	    var MaxWidth = 200; //设置图片宽度界限
	    var MaxHeight = 200; //设置图片高度界限
	    var HeightWidth = img.offsetHeight / img.offsetWidth; //设置高宽比
	    var WidthHeight = img.offsetWidth / img.offsetHeight; //设置宽高比
	    if (img.offsetWidth > MaxWidth) {
	        $(img).css("width", MaxWidth);
	        $(img).css("height", MaxWidth * HeightWidth);
	    } 
	    if (img.offsetHeight > MaxHeight) {
	        $(img).css("height", MaxHeight);
	        $(img).css("width", MaxHeight * WidthHeight);
	    } 
	}
</script>


调用方法:
<div align=center style="width:200px;height:200px;" ><img  src ="图片地址" onload='Wa_SetImgAutoSize(this);'/></div>

参考:http://www.codefans.net/jscss/code/513.shtml
分享到:
评论

相关推荐

    ArcGIS教程:自定义地图范围

    用户可以通过六种方法来设置地图的固定范围,包括数据框的当前范围、特定图层中所有要素的组合范围、当前地图范围内可见的特定图层中所有要素的组合范围等。在设定固定范围时,应注意数据视图窗口的纵横比和页面布局...

    cad布局中如何打印选择区域.doc

    在“模型”模式下,可以在限定范围内编辑图形;在“图纸”模式下,可以调整整个图纸的位置,而不影响模型中的图形,也可以在此模式下添加技术说明等额外内容。 4. **窗口缩放**(Z命令): - 这是一个非常实用的...

    Visual Graph 交互图形开发平台(组件)

     一般的自动化图形设计软件,可以自行开发元件库,但是只能在软件限定的范围内进行,这样难免会有不足,而Visual Graph的元件库开发类似于流行编程语言(如Delphi),具有无限的可能性,任何元件都可以做。...

    一份学习TFT驱动的不错的资料

    - 同时还需要设置R20H和R21H寄存器,确定数据更新开始的具体坐标,从而限定图像在屏幕上的显示范围。 #### 三、实际应用案例 **1. 示例说明** - 以一幅猫的图像为例,展示了如何调整图像大小并将其正确显示在屏幕...

    易语言GDI描绘矩形文本源码.7z

    5. **矩形坐标**:确定矩形的左上角和右下角坐标,以此来限定文本的显示范围。 6. **文本格式**:使用`EXTTEXTOUTA`或`EXTTEXTOUTW`函数可以指定文本的对齐方式、是否自动换行等。 7. **绘图顺序**:通常先创建DC...

    Visual C++程序开发范例宝典(光盘) 第四部分

    实例277 使用IN引入子查询限定查询范围 实例278 用IN查询表中的记录信息 9.16 交叉表查询 实例279 利用TRANSFORM分析数据 实例280 利用TRANSFORM动态分析数据 实例281 静态交叉表(SQL Server 2000) 实例282 ...

    Visual C++程序开发范例宝典(光盘) 第八部分

    实例277 使用IN引入子查询限定查询范围 实例278 用IN查询表中的记录信息 9.16 交叉表查询 实例279 利用TRANSFORM分析数据 实例280 利用TRANSFORM动态分析数据 实例281 静态交叉表(SQL Server 2000) 实例282 ...

    matlab学习资料.docx

    需要注意的是,`im2uint8`在转换过程中会确保数据在0到1的范围内,小于0的值会被设为0,大于1的值会被设为255,其余值会乘以255。这使得转换后的数据适合于显示。 在进行图像计算前,通常需要将图像数据转换为`...

    Excel百宝箱9.0无限制破解版.rar

    【批量导入图片(自动排版)】:批量导入图片,且自动排版,可多行多列排版,可任意指定图片大小与路径 【批量导入图片到批注】:批量地将图片导入到批注中,可以自由设定图片显示大小 【删除所有图片】:删除...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例260 使背景图片自动适应窗体的大小 331 实例261 背景为渐变色的主界面 332 实例262 随机更换窗体背景 334 11.5 窗体形状及应用 335 实例263 椭圆形窗体界面 335 实例264 钻石形窗体 336 实例265 创建透明窗体 ...

    sketchup教程

    1. **平移操作**:在选择状态下按下Shift键可以实现平移操作。 2. **全屏平移**:按下“+”键可以实现全屏平移。 3. **全选操作**:按下Ctrl键可以实现全选操作。 4. **撤销操作**:按下Ctrl + Z可以撤销上一步操作...

    Visual C++程序开发范例宝典(PDF扫描版).part3

     cc实例052 在ListBox控件间实现数据交换   cc实例053 列表项的提示条   2.4 ComboBox控件典型实例   cc实例054 将数据表中的字段添加到ComboBox控件   cc实例055 带查询功能的ComboBox控件   cc...

    Visual C++程序开发范例宝典(PDF扫描版).part2

     cc实例052 在ListBox控件间实现数据交换   cc实例053 列表项的提示条   2.4 ComboBox控件典型实例   cc实例054 将数据表中的字段添加到ComboBox控件   cc实例055 带查询功能的ComboBox控件   cc...

    Visual C++ 程序开发范例宝典 源码 光盘 part2

    cc实例274 LEFTcOUTERcJOIN查询 cc实例275 RIGHTcOUTERcJOIN查询 cc实例276 使用外连接进行多表联合查询 9.15 利用IN进行查询 cc实例277 使用IN引入子查询限定查询范围 cc实例278 用IN查询表中的记录信息...

    ArcGIS Desktop 9使用技巧集锦.doc

    当多个要素覆盖在同一区域内时,可以通过按`N`键快速在不同图层间切换选中要素,从而精确选取目标要素。 2. **捕捉技巧**: - **显示捕捉提示**:在Editor菜单中选择Option,勾选"Show snap tip",可在捕捉时看到...

    Scratch课程-scratch大纲

    - **限定范围**:如何限制角色只能在指定范围内移动,比如只允许角色在某个长椅上行走。 **知识点2:颜色路径** - **制作颜色路径背景**:创建一个背景图,其中某些区域是特定颜色(如白色道路),角色只能在这条...

Global site tag (gtag.js) - Google Analytics