jQuery实现图片加载完成后改变图片大小的方法


Posted in Javascript onMarch 29, 2016

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
JavaScript入门教程(11) js事件处理
Jan 31 Javascript
Jquery判断IE6等浏览器的代码
Apr 05 Javascript
HTML5附件拖拽上传drop &amp; google.gears实现代码
Apr 28 Javascript
javaScript让文本框内的最后一个文字的后面获得焦点实现代码
Jan 06 Javascript
文本域光标操作的jQuery扩展分享
Mar 10 Javascript
js锁屏解屏通过对$.ajax进行封装实现
Jul 31 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
May 06 Javascript
JS实现点击按钮控制Div变宽、增高及调整背景色的方法
Aug 05 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 Javascript
JS正则替换去空格的方法
Mar 24 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
Apr 26 jQuery
vue中的可拖拽宽度div的实现示例
Apr 08 Vue.js
Web前端开发工具——bower依赖包管理工具
Mar 29 #Javascript
Jquery操作cookie记住用户名
Mar 29 #Javascript
jQuery简单实现提交数据出现loading进度条的方法
Mar 29 #Javascript
Javascript设计模式之观察者模式(推荐)
Mar 29 #Javascript
AngularJS directive返回对象属性详解
Mar 28 #Javascript
Boostrap模态窗口的学习小结
Mar 28 #Javascript
理解javascript模块化
Mar 28 #Javascript
You might like
php中并发读写文件冲突的解决方案
2013/10/25 PHP
PHP执行linux命令常用函数汇总
2016/02/02 PHP
PHP中子类重载父类的方法【parent::方法名】
2016/05/06 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
laravel 实现上传图片到本地和前台访问示例
2019/10/21 PHP
nicejforms——美化表单不用愁
2007/02/20 Javascript
Firefox window.close()的使用注意事项
2009/04/11 Javascript
JavaScript通过字符串调用函数的实现方法
2015/03/18 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
微信小程序 教程之模块化
2016/10/17 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
基于JavaScript实现图片剪切效果
2017/03/07 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
2019/04/01 Javascript
深入解析koa之中间件流程控制
2019/06/17 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
js事件机制----捕获与冒泡机制实例分析
2020/05/22 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
Python的dict字典结构操作方法学习笔记
2016/05/07 Python
python僵尸进程产生的原因
2017/07/21 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
解决python3捕获cx_oracle抛出的异常错误问题
2018/10/18 Python
python实现Flappy Bird源码
2018/12/24 Python
使用python绘制cdf的多种实现方法
2020/02/25 Python
python使用建议技巧分享(三)
2020/08/18 Python
Django中ORM的基本使用教程
2020/12/22 Python
写好求职应聘自荐信的三部曲
2013/09/21 职场文书
客服实习的个人自我鉴定
2013/10/20 职场文书
踏青活动策划方案
2014/08/19 职场文书
贫困生助学金感谢信
2015/01/21 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
给女朋友的道歉短信
2015/05/12 职场文书
开学典礼校长致辞
2015/07/29 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
创业计划书之奶茶店开店方案范本!
2019/08/06 职场文书