使用jquery获取网页中图片高度的两种方法


Posted in Javascript onSeptember 26, 2013

使用jquery获取网页中图片的高度其实很简单,有两种常用的方法都可以打到我们的目的

$("img").whith();(返回纯数字) 
$("img").css("width");(返回字符串:数字+"px")

但是有时候会遇到返回0的情况,上面方法返回值竟然是0或者0px,很让人诧异

方法一

在很早之前,我使用的解决方法,这也是我的师傅告诉我的解决方法:在你需要获取到的图片的<img>标签上加上width属性,或者在css中写出来图片的告诉,这样就可以了,所以每次我要去获取一个图片的高度的时候,都需要去先测量一下图片的高度,然后写到网页中,这样才可以,是不是很笨拙啊,下面我们来看第二个方法。

方法二

最近在看Learning jQuery英文版原著,正因为一边翻译,一边阅读,所以每一页都看的很仔细,于是终于仔细阅读体会了以下两种常用的jquery事件加载的方法

$(function(){}); 
window.onload=function(){}

第一个呢,是在DOM结构渲染完成以后调用的,这时候网页中一些资源还没有加载,比如图片等资源,但是DOM结构已经渲染成功了
第二个呢,是在网页DOM结构渲染完成,而且资源已经加载成功以后调用的。

有没有感受出区别来呢,一个是在资源没有加载的时候调用的,一个是在资源加载结束,页面已经渲染之后调用的,所以当我们在$(function(){})调用$('img').width()的时候,由于图片还没有加载,所以这时候<img>标签的高度就是0,所以返回值就是0。但是当你用window.onload=function(){}调用的时候,图片已经加载出来了,所以这时候就能得到图片的高度。

所以记得,$(function(){})是在DOM渲染结束,资源还没有加载的时候执行的,如果你想获取到一些资源的信息,这个时候是没有办法的哦

Javascript 相关文章推荐
jQuery 插件仿百度搜索框智能提示(带Value值)
Jan 22 Javascript
jsp js鼠标移动到指定区域显示选项卡离开时隐藏示例
Jun 14 Javascript
JavaScript运算符小结
Jun 03 Javascript
JS实现带有抽屉效果的产品类网站多级导航菜单代码
Sep 15 Javascript
javascript中window.open在原来的窗口中打开新的窗口(不同名)
Nov 15 Javascript
JQuery 设置checkbox值二次无效的解决方法
Jul 22 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
Jul 26 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
Jun 22 Javascript
Vue2.0用 watch 观察 prop 变化(不触发)
Sep 08 Javascript
详解使用vuex进行菜单管理
Dec 21 Javascript
微信小程序踩坑记录之解决tabBar.list[3].selectedIconPath大小超过40kb
Jul 04 Javascript
jQuery-App输入框实现实时搜索
Nov 19 jQuery
Extjs实现进度条的两种便捷方式
Sep 26 #Javascript
js中的referrer返回上一页使用介绍
Sep 26 #Javascript
JavaScript中的运算符种类及其规则介绍
Sep 26 #Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
Sep 26 #Javascript
Jquery实现图片左右自动滚动示例
Sep 25 #Javascript
jquery实现加载等待效果示例
Sep 25 #Javascript
js的onload事件及初始化按钮事件示例代码
Sep 25 #Javascript
You might like
html中select语句读取mysql表中内容
2006/10/09 PHP
php实现格式化多行文本为Js可用格式
2015/04/15 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
2016/07/06 PHP
PHP http请求超时问题解决方案
2020/11/13 PHP
JS类的封装及实现代码
2009/12/02 Javascript
js实现的常用的左侧导航效果
2013/10/17 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
2014/08/08 Javascript
jQuery实现带有洗牌效果的动画分页实例
2015/08/31 Javascript
跟我学习javascript的prototype使用注意事项
2015/11/17 Javascript
简单理解vue中实例属性vm.$els
2016/12/01 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
vue2.0安装style/css loader的方法
2018/03/14 Javascript
vue内置组件transition简单原理图文详解(小结)
2018/07/12 Javascript
使用electron实现百度网盘悬浮窗口功能的示例代码
2018/10/24 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
vue中watch的用法汇总
2020/12/28 Vue.js
[37:45]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS Orenda
2014/05/22 DOTA
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
[58:46]OG vs NAVI 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python分布式环境下的限流器的示例
2017/10/26 Python
浅析Python数据处理
2018/05/02 Python
详解Python3之数据指纹MD5校验与对比
2019/06/11 Python
通过python实现windows桌面截图代码实例
2020/01/17 Python
浅谈python累加求和+奇偶数求和_break_continue
2020/02/25 Python
HTML5打开手机扫码功能及优缺点
2017/11/27 HTML / CSS
Java提供了哪些企业应用编程接口
2015/02/13 面试题
Hibernate持久层技术
2013/12/16 面试题
UNIX文件名称有什么规定
2013/03/25 面试题
货车司机岗位职责
2014/03/18 职场文书
大学生交通专业求职信
2014/09/01 职场文书
2015年创先争优工作总结
2015/05/23 职场文书
一年级语文教学随笔
2015/08/14 职场文书
Elasticsearch 数据类型及管理
2022/04/19 Python
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技