jQuery图片预加载 等比缩放实现代码
2011-10-04 00:00
856 查看
/* * Image preload and auto zoom * scaling 是否等比例自动缩放 * width 图片最大高 * height 图片最大宽 * loadpic 加载中的图片路径 * example $("*").LoadImage(true,w,h); */ jQuery.fn.LoadImage=function(scaling,width,height,loadpic){ if(loadpic==null)loadpic="../images/loading.gif"; return this.each(function(){ var t=$(this); var src=$(this).attr("src") var img=new Image(); //alert("Loading...") img.src=src; //自动缩放图片 var autoScaling=function(){ if(scaling){ if(img.width>0 && img.height>0){ if(img.width/img.height>=width/height){ if(img.width>width){ t.width(width); t.height((img.height*width)/img.width); t.css("margin-top", (height-t.height())/2); }else{ t.width(img.width); t.height(img.height); t.css("margin-top", (height-t.height())/2); } } else{ if(img.height>height){ t.height(height); t.width((img.width*height)/img.height); t.css("margin-top", (height-t.height())/2); }else{ t.width(img.width); t.height(img.height); t.css("margin-top", (height-t.height())/2); } } } } } //处理ff下会自动读取缓存图片 if(img.complete){ //alert("getToCache!"); autoScaling(); return; } $(this).attr("src",""); var loading=$("<img alt=\"加载中...\" title=\"图片加载中...\" src=\""+loadpic+"\" />"); t.hide(); t.after(loading); $(img).load(function(){ autoScaling(); loading.remove(); t.attr("src",this.src); t.show(); //alert("finally!") }); }); }
相关文章推荐
- jQuery写法图片等比缩放以及预加载
- js或者jquery判断图片是否加载完成实现代码
- JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
- 网络图片延迟加载实现代码 超越jquery控件
- 图片延迟加载并等比缩放,一个简单的JQuery插件。
- jquery 实现网页端图片等比缩放
- js或者jquery判断图片是否加载完成实现代码
- jQuery 简洁几句代码实现图片延迟加载
- jQuery 简洁几句代码实现图片延迟加载
- JQuery 图片延迟加载并等比缩放插件
- 基于jquery的防止大图片撑破页面的实现代码(立即缩放)
- JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
- 基于jquery实现等比缩放图片
- 基于jquery的防止大图片撑破页面的实现代码(立即缩放)
- 图片延迟加载并等比缩放,一个简单的JQuery插件
- jquery 插件实现图片延迟加载效果代码
- jquery中加载图片自适应大小主要实现代码