用jquery控制图片的最大宽度

本文分享了在IE浏览器下使用jQuery控制图片宽度的方法,包括事件触发方式和图片宽度控制逻辑,旨在解决图片溢出容器的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时候我们在网页中插入图片,图片会被撑开外部的容器,溢出到外面。css中有一个属性为max-width,max-width 定义元素的最大宽度。W3C在其官方文档中说“所有主流浏览器都支持 max-width 属性。”扯淡,IE6就不支持该属性,图片照样被撑开。IE下,图片会直接把外框撑宽。所以,在做IE兼容的时候大家都用js控制,现在分享下使用jquery控制图片宽度的方法。

主代码如下:

   
   
<script>
$(window).load(function() {  //容器内所有图片超过宽度等比例缩小,不能用$(document).ready( 
    $(".ny_news_ct img").each( function() {
var maxwidth = 670;
var _height=parseInt($(this).height()/$(this).width()*670);
//alert(_height);
  if ($(this).width() > maxwidth) {
$(this).css("width",670+"px");
$(this).css("height",_height+"px");
  }
});  
});
</script>



代码不用解释,值得注意的是两个地方:

第一:$(window).load(function() {  

声明事件的部分使用$(window).load,不能使用$(document).ready。
我在百度和iteye网站看到有相关的文章,方法都是错误的。根本不起作用。

第二:$(".cont img").each( function() 

这里是.each( function() { ....  }),each在这里是对指定的图片集合对象逐一调用下面的方法。

这种方法兼容大部分的浏览器,效果也很便捷。

个人感觉这种方法比较顺手,另外,可以拓展为缩略图的控制方法。具体做法参考http://zww.me/archives/25474
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北方的刀郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值