使用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,mootools,dojo)使用适合自己的编程别名命名
Sep 14 Javascript
JS刷新框架外页面七种实现代码
Feb 18 Javascript
JavaScript中的对象与JSON
Jul 03 Javascript
基于jQuery实现点击弹出层实例代码
Jan 01 Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
Mar 22 Javascript
JavaScript实现格式化字符串函数String.format
Dec 16 Javascript
本地存储localStorage用法详解
Jul 31 Javascript
使用mint-ui开发项目的一些心得(分享)
Sep 07 Javascript
vue非父子组件通信问题及解决方法
Jun 11 Javascript
解决LayUI表单获取不到data的问题
Aug 20 Javascript
JS获取动态添加元素的方法详解
Jul 31 Javascript
Ant Design Vue 添加区分中英文的长度校验功能
Jan 21 Javascript
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
PHP文本数据库的搜索方法
2006/10/09 PHP
php下使用SMTP发邮件的代码
2008/01/10 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
ThinkPHP模版引擎之变量输出详解
2014/12/05 PHP
使用Composer安装Yii框架的方法
2016/03/15 PHP
Laravel实现ApiToken认证请求
2019/10/14 PHP
Jquery ui css framework
2010/06/28 Javascript
JQuery从头学起第二讲
2010/07/04 Javascript
JSON语法五大要素图文介绍
2012/12/04 Javascript
解析JavaScript中instanceof对于不同的构造器或许都返回true
2013/12/03 Javascript
js的回调函数详解
2015/01/05 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
2015/04/03 Javascript
jQuery实现图片加载完成后改变图片大小的方法
2016/03/29 Javascript
AngularJS基础 ng-mouseover 指令简单示例
2016/08/02 Javascript
BootStrap中Datepicker控件带中文的js文件
2016/08/10 Javascript
nodejs socket服务端和客户端简单通信功能
2017/09/14 NodeJs
浅谈es6 javascript的map数据结构
2017/12/14 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
2019/07/18 Javascript
vue使用swiper实现左右滑动切换图片
2020/10/16 Javascript
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
详解Python发送邮件实例
2016/01/10 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
Python的iOS自动化打包实例代码
2018/11/22 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
如何清空python的变量
2020/07/05 Python
英国的潮牌鞋履服饰商店:size?
2019/03/26 全球购物
Andrew Marc官网:设计师外套的领先制造商
2019/10/30 全球购物
生物化学研究助理员求职信
2013/10/09 职场文书
机械专业毕业生自荐信
2013/11/02 职场文书
项目经理岗位职责
2013/11/11 职场文书
办公室副主任职责范本
2014/03/08 职场文书
2014年教师工作总结
2014/11/10 职场文书
2015年行政管理人员工作总结
2015/10/15 职场文书
导游词之青岛太清宫
2019/12/13 职场文书
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
十大必看国产动漫排名,魁拔上线,第二曾在日本播出
2022/03/18 国漫