用 new Image()获取图片真实尺寸;
jq width() 、height()获取的是图片加载到页面上的图片显示尺寸(图片标签width、height属性值或max-width后的值)而非图片真实尺寸;
load()第一次执行,刷新页面后图片可能会被缓存,图片被缓存不执行load(),固要加是否已缓存图片判断
<script> $("img").each(function(index, el) { // 图片真实尺寸 var img=new Image(); img.src=$(this).attr("src"); var w=img.width; var h=img.height; console.log("图片真实尺寸:width:"+w+" height:"+h); // jq width() 、height()获取的是图片即图片加载到页面上的图片显示尺寸(图片标签width、height属性值或max-width后的值)而非图片真实尺寸 // load()第一次执行,刷新页面后图片可能会被缓存,图片被缓存不执行load(),固要加是否已缓存图片判断 var w=$(this).width(); var h=$(this).height(); var img_loaded=function(){ console.log(this); console.log("图片加载到页面上的图片显示尺寸:width:"+$(this).width()+" height:"+$(this).height()); }; if(w && h){ //能获取width/height即表明图片已加载 img_loaded.apply(this); }else{//还没加载图片时执行 $(this).load(function(){ console.log("load"); var w=$(this).width(); var h=$(this).height(); img_loaded.apply(this); }); } }); </script>
1条评论( 网友:1 条,站长:0 条 ) 网友评论{有您的评论更精彩....}