关于JS判断图片是否加载完成且获取图片宽度的方法


Posted in Javascript onApril 09, 2013

做web的同学们经常会碰到客户上传图片将网页内容区撑破了的情况,下面就这个问题我们一种如何使用js处理这个问题的方法,具体思路就是在js判断客户端的图片下载完毕之后适时的对该图片的宽度或者高度做一些处理,js处理图片主要是利用js中Image对象,通过 onload 事件和 onreadystatechange 来进行判断。

(1)第一中方法,通过onload事件,比如:

<script type="text/javascript">
var obj=new Image();
obj.src="http://www.phpernote.com/uploadfiles/editor/201107240502201179.jpg";
obj.onload=function(){
alert('图片的宽度为:'+obj.width+';图片的高度为:'+obj.height);
document.getElementById("mypic").innnerHTML="<img src='"+this.src+"' />";
}
</script>
<div id="mypic">onloading……</div>

(2)第二种方法,使用 onreadystatechange 来判断

<script type="text/javascript">
var obj=new Image();
obj.src="http://www.phpernote.com/uploadfiles/editor/201107240502201179.jpg";
obj.onreadystatechange=function(){
if(this.readyState=="complete"){
alert('图片的宽度为:'+obj.width+';图片的高度为:'+obj.height);
document.getElementById("mypic").innnerHTML="<img src='"+this.src+"' />";
}
}
</script>
<div id="mypic">onloading……</div>
Javascript 相关文章推荐
点图片上一页下一页翻页效果
Jul 09 Javascript
JavaScript实现的一个倒计时的类
Mar 12 Javascript
ES6学习笔记之Set和Map数据结构详解
Apr 07 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
May 03 Javascript
Angular.JS内置服务$http对数据库的增删改使用教程
May 07 Javascript
BackBone及其实例探究_动力节点Java学院整理
Jul 14 Javascript
Django中使用jquery的ajax进行数据交互的实例代码
Oct 15 jQuery
利用原生js实现html5小游戏之打砖块(附源码)
Jan 03 Javascript
node.js+express+mySQL+ejs+bootstrop实现网站登录注册功能
Jan 12 Javascript
JavaScript设计模式之构造函数模式实例教程
Jul 02 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
Aug 04 Javascript
微信小程序实现聊天室功能
Jun 14 Javascript
关于JavaScript中的关联数组分析
Apr 09 #Javascript
分析Node.js connect ECONNREFUSED错误
Apr 09 #Javascript
Node.js生成HttpStatusCode辅助类发布到npm
Apr 09 #Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
Apr 08 #Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
Apr 08 #Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
Apr 08 #Javascript
Struts2的s:radio标签使用及用jquery添加change事件
Apr 08 #Javascript
You might like
php 遍历数据表数据并列表横向排列的代码
2009/09/05 PHP
php抓取页面与代码解析 推荐
2010/07/23 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
2012/10/04 PHP
php仿QQ验证码的实例分析
2013/07/01 PHP
javascript 支持ie和firefox杰奇翻页函数
2008/07/22 Javascript
深入理解javaScript中的事件驱动
2013/05/21 Javascript
js动态创建、删除表格示例代码
2013/08/07 Javascript
jQuery插件bgStretcher.js实现全屏背景特效
2015/06/05 Javascript
JavaScript实现简单Tip提示框效果
2016/04/20 Javascript
js显示动态时间的方法详解
2016/08/20 Javascript
简单实现JS倒计时效果
2016/12/23 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
JS二分查找算法详解
2017/11/01 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
2019/02/10 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
[43:48]Ti4正赛第一天 VG vs NEWBEE 2
2014/07/19 DOTA
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
Python操作MySQL数据库9个实用实例
2015/12/11 Python
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
python微信公众号之关键词自动回复
2018/06/15 Python
选择python进行数据分析的理由和优势
2019/06/25 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
Tensorflow轻松实现XOR运算的方式
2020/02/03 Python
Python接口测试get请求过程详解
2020/02/28 Python
CSS3 :default伪类选择器使用简介
2018/03/15 HTML / CSS
Html5中的桌面通知Notification的实现
2018/09/25 HTML / CSS
购买英国原创艺术:Art Gallery
2018/08/25 全球购物
领先的荷兰线上超市:荷兰之家Holland at Home(支持中文)
2021/01/21 全球购物
GWT的应用有哪两种部署模式
2012/12/21 面试题
集团公司总经理岗位职责
2013/12/20 职场文书
大学生蛋糕店创业计划书
2014/01/13 职场文书
学生安全教育材料
2014/02/14 职场文书
学习张丽丽心得体会
2014/09/03 职场文书
2014年培训工作总结范文
2014/11/27 职场文书
主持人大赛开场白
2015/05/29 职场文书
2015年城乡环境综合治理工作总结
2015/07/24 职场文书