关于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 相关文章推荐
js验证模型自我实现的具体方法
Jun 21 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
Nov 08 Javascript
js实现当前输入框高亮显示的方法
Aug 19 Javascript
JavaScript里 ==与===区别详解
Aug 16 Javascript
JavaScript中省略元素对数组长度的影响
Oct 26 Javascript
vue一步步实现alert功能
Jul 05 Javascript
使用InstantClick.js让页面提前加载200ms
Sep 12 Javascript
详解如何在Angular优雅编写HTTP请求
Dec 05 Javascript
JavaScript中引用vs复制示例详析
Dec 06 Javascript
Vue+Element实现动态生成新表单并添加验证功能
May 23 Javascript
纯JS实现五子棋游戏
May 28 Javascript
基于js实现判断浏览器类型代码实例
Jul 17 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
如何过滤高亮显示非法字符
2006/10/09 PHP
PHP 程序员应该使用的10个组件
2009/10/31 PHP
php在线代理转向代码
2012/05/05 PHP
php循环创建目录示例分享(php创建多级目录)
2014/03/04 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
2014/06/09 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
centos7上编译安装php7以php-fpm方式连接apache
2018/11/08 PHP
mongodb和php的用法详解
2019/03/25 PHP
JavaScript DOM 学习第五章 表单简介
2010/02/19 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
JavaScript获取并更改input标签name属性的方法
2015/07/02 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
2017/08/23 Javascript
浅谈Vue render函数在ElementUi中的应用
2018/09/06 Javascript
vue.js+element-ui动态配置菜单的实例
2018/09/07 Javascript
[56:58]VP vs Optic 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
在Python中关于中文编码问题的处理建议
2015/04/08 Python
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
python使用requests模块实现爬取电影天堂最新电影信息
2019/04/03 Python
详解python websocket获取实时数据的几种常见链接方式
2019/07/01 Python
python 通过视频url获取视频的宽高方式
2019/12/10 Python
tensorflow 利用expand_dims和squeeze扩展和压缩tensor维度方式
2020/02/07 Python
Python 创建TCP服务器的方法
2020/07/28 Python
大学生饮食配送创业计划书
2014/01/04 职场文书
高中生物教学反思
2014/02/05 职场文书
房屋租赁协议书
2014/04/10 职场文书
需求分析说明书
2014/05/09 职场文书
共产党员公开承诺践诺书
2014/05/28 职场文书
2015年质检工作总结
2015/05/04 职场文书
2015年班主任德育工作总结
2015/05/21 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
Python超详细分步解析随机漫步
2022/03/17 Python