手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >jQuery实现图片加载完成后改变图片大小的方法
jQuery实现图片加载完成后改变图片大小的方法
摘要:本文实例讲述了jQuery实现图片加载完成后改变图片大小的方法。分享给大家供大家参考,具体如下:要改变图片的大小并不难,可以用jQuery操...

本文实例讲述了jQuery实现图片加载完成后改变图片大小的方法。分享给大家供大家参考,具体如下:

要改变图片的大小并不难,可以用jQuery操作css改变。但是前提是要判断图片是否加载完成。主要是通过jQuery的load事件和onreadystatechange来判断其状态。

对于IE6,用onreadystatechange可以直接处理,在IE7中,则需要用定时器来判断图片的readystate状态。而对于FF和Chrome刚可以直接用load事件来判断。

以下是在实例中使用的完整代码:

<script type="text/javascript"> $(document).ready(function(){ function changeSize(obj){ //本函数用于在图片加载时对图片大小等进行设置 w=obj.width(); h=obj.height(); t=obj.attr("title"); src=obj.attr("src"); obj.width(w>400?400:w); obj.height(w>400?(400/w)*h:h); obj.css("cursor","pointer"); obj.click(function(){ $("#picDlg").html("<img src="+src+" border=0/>").fadeIn(1000).dialog({ width:"auto", height:"auto", title:t, modal:true, draggable:false, resizable:false }) }) } if($.browser.msie){ //IE 6.0 if($.browser.version==6.0){ $(".bodyLeft img").each(function(ind,ele){ // ele.onreadystatechange =function(){ if(ele.readyState == "complete"||ele.readyState=="loaded"){ changeSize($(this)); } //} }) } //IE 6.0以上 else{ $(".bodyLeft img").each(function(){ tempTimer=window.setInterval(function(ind,ele){ if(ele.readyState=="complete"){ window.clearInterval(tempTimer); changeSize($(this)); } else{ return; } },200); }) } } //FF,Chrome else{ $(".bodyLeft img").each(function(ind,ele){ alert(ele.complete); if(ele.complete==true){ changeSize($(this)); } }) } }) </script>

上面的图片可以将图片等比例缩小显示在文章中,同时使用的jQuery的Dialog UI组件单击图片时,以一个层显示完整大小的图片。

希望本文所述对大家jQuery程序设计有所帮助。

【jQuery实现图片加载完成后改变图片大小的方法】相关文章:

jQuery实现html表格动态添加新行的方法

jquery简单实现外部链接用新窗口打开的方法

js实现鼠标划过给div加透明度的方法

JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法

jQuery实现首页图片淡入淡出效果的方法

jQuery计算文本框字数及限制文本框字数的方法

js实现点击链接后延迟3秒再跳转的方法

jquery读取xml文件实现省市县三级联动的方法

js+html5实现canvas绘制简单矩形的方法

javascript实现table表格隔行变色的方法

精品推荐
分类导航