关于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代码,用以防止图片撑破页面
Mar 12 Javascript
jQuery 判断页面元素是否存在的代码
Aug 14 Javascript
jquery实现商品拖动选择效果代码(自写)
May 28 Javascript
将查询条件的input、select清空
Jan 14 Javascript
jquery实现页面虚拟键盘特效
Aug 08 Javascript
详解Javascript ES6中的箭头函数(Arrow Functions)
Aug 24 Javascript
H5移动端适配 Flexible方案
Oct 24 Javascript
javascript判断回文数详解及实现代码
Feb 03 Javascript
微信小程序全局变量功能与用法详解
Jan 22 Javascript
vue-next/runtime-core 源码阅读指南详解
Oct 25 Javascript
react国际化化插件react-i18n-auto使用详解
Mar 31 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
May 06 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
各种咖啡的英文名子是什么
2021/03/03 新手入门
PHP与javascript实现变量交互的示例代码
2013/07/23 PHP
php 获取SWF动画截图示例代码
2014/02/10 PHP
ThinkPHP访问不存在的模块跳转到404页面的方法
2014/06/19 PHP
浅谈PHP命令执行php文件需要注意的问题
2016/12/16 PHP
关于实现代码语法标亮 dp.SyntaxHighlighter
2007/02/02 Javascript
灵活应用js调试技巧解决样式问题的步骤分享
2012/03/15 Javascript
javascript 图片裁剪技巧解读
2012/11/15 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
一段非常简单的js判断浏览器的内核
2014/08/17 Javascript
JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
2014/10/17 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
2015/04/13 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
AngularJS进行性能调优的7个建议
2015/12/28 Javascript
基于React.js实现原生js拖拽效果引发的思考
2016/03/30 Javascript
js实现div模拟模态对话框展现URL内容
2016/05/27 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
canvas实现粒子时钟效果
2017/02/06 Javascript
AngularJS改变元素显示状态
2017/04/20 Javascript
Underscore之Array_动力节点Java学院整理
2017/07/10 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
2018/10/12 Javascript
手把手带你封装一个vue component第三方库
2019/02/14 Javascript
node(koa2) web应用模块介绍详解
2019/03/29 Javascript
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
[00:12]2018DOTA2亚洲邀请赛 Sccc亮相SOLO赛,今年他又会有什么样的战绩?
2018/04/06 DOTA
python调用API实现智能回复机器人
2018/04/10 Python
Python子类继承父类构造函数详解
2019/02/19 Python
5款Python程序员高频使用开发工具推荐
2019/04/10 Python
Python中查看变量的类型内存地址所占字节的大小
2019/06/26 Python
Python统计文本词汇出现次数的实例代码
2020/02/27 Python
Django如何在不停机的情况下创建索引
2020/08/02 Python
python实现人性化显示金额数字实例详解
2020/09/25 Python
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
考试退步检讨书
2014/01/15 职场文书
学习型班组申报材料
2014/05/31 职场文书
SQLyog的下载、安装、破解、配置教程(MySQL可视化工具安装)
2022/09/23 MySQL