获取图片的宽高

// var img = new Image();
// img.src =$('.z_boder img').attr("src") ;
// var w = img.width;
// var h = img.height;
// $(".jcarousel-list li").css("width",w);

// $(".jcarousel-item").css("height",h);


jquery获取网络图片宽高

var img = new Image();
    img.src="http://www.baidu.com/img/baidu_sylogo1.gif";
    img.onload = function(){
        alert(this.width);
        alert(this.height);
        this.onload=null;
    }
通过$("#img").attr("width");这种方式获取的值,在图片没有加载完成的时候,是不正确的


用jquery控制图片的最大宽度  

这是第一种:
主代码如下:
<script type="text/javascript">
$(window).load(function() {   
    $(".cont img").each( function() {
var maxwidth = 800;
if ($(this).width() > maxwidth) {
$(this).width(maxwidth);
}
});  
});  
</script>
代码不用解释,值得注意的是两个地方:
第一:$(window).load(function() {  
声明事件的部分使用$(window).load,不能使用$(document).ready。
我在百度和iteye网站看到有相关的文章,方法都是错误的。根本不起作用。
第二:$(".cont img").each( function() 
这里是.each( function() { ....  }),each在这里是对指定的图片集合对象逐一调用下面的方法。
这种方法兼容大部分的浏览器,效果也很便捷。
这是第二种:
jQuery(document).ready(function(){
/* 图片不完全按比例自动缩小 by zwwooooo */
    $(window).load(function(){
	$('#content div.thumbnail img').each(function(){
		var x = 200; //填入目标图片宽度
		var y = 140; //填入目标图片高度
		var w=$(this).width(), h=$(this).height();//获取图片宽度、高度
		if (w > x) { //图片宽度大于目标宽度时
			var w_original=w, h_original=h;
			h = h * (x / w); //根据目标宽度按比例算出高度
			w = x; //宽度等于预定宽度
			if (h < y) { //如果按比例缩小后的高度小于预定高度时
				w = w_original * (y / h_original); //按目标高度重新计算宽度
				h = y; //高度等于预定高度
			}
		}
		$(this).attr({width:w,height:h});
	});
    });
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值