浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法


Posted in Javascript onNovember 29, 2016

1.JQuery this和$(this)的区别

相信很多刚接触JQuery的人,很多都会对$(this)和this的区别模糊不清,那么这两者有什么区别呢?

首先来看看JQuery中的  $()  这个符号,实际上这个符号在JQuery中相当于JQuery(),即$(this)=jquery();也就是说,这样可以返回一个jquery对象。那么,当你在网页中alert($('#id'));时,会弹出一个[object Object ],这个object对象,也就是jquery对象了。

那么,我们再回过头来说$(this),这个this是什么呢?假设我们有如下的代码:

$("#desktop a img").each(function(index){

      alert($(this));

      alert(this);

 }

那么,这时候可以看出来:

 alert($(this));  弹出的结果是[object Object ]

 alert(this);   弹出来的是[object HTMLImageElement]

也就是说,后者返回的是一个html对象(本例中是遍历HTML的img对象,所以为HTMLImageElement)。

很多人在使用jquery的时候,经常this.attr('src');   这时会报错“对象不支持此属性或方法”,这又是为什么呢?其实看明白上面的例子,就知道错在哪里了:很简单,this操作的是HTML对象,那么,HTML对象中怎么会有val()方法了,所以,在使用中,我们不能直接用this来直接调用jquery的方法或者属性。

2.获取$(this)子节点对象的方法:find(element)

明白了$(this)和this的区别,再来看看这个例子:(假设,我的页面中a标签包含img,并含有src属性),当我在遍历的时候,想取到$(this)下img中src的地址

$("#desktop a ").each(function(index){

  var imgurl=$(this).find('img').attr('src');

  alert(imgurl);

 }

其中 .find(element) 是返回一个用于匹配元素的DOM元素,这样就可以取到想要的src地址了。

以上这篇浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 脚本将当地时间转换成其它时区
Mar 19 Javascript
jQuery 版本的文本输入框检查器Input Check
Jul 09 Javascript
纯js仿淘宝京东商品放大镜功能
Mar 02 Javascript
利用Javascript裁剪图片并存储的简单实现
Mar 13 Javascript
简单谈谈axios中的get,post方法
Jun 25 Javascript
Node.js学习教程之HTTP/2服务器推送【译】
Oct 31 Javascript
JS实现的简单拖拽购物车功能示例【附源码下载】
Jan 03 Javascript
angular4 JavaScript内存溢出问题
Mar 06 Javascript
解决Vue调用springboot接口403跨域问题
Sep 02 Javascript
vue-router结合vuex实现用户权限控制功能
Nov 14 Javascript
对vuex中store和$store的区别说明
Jul 24 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
Feb 26 Vue.js
jQuery获取this当前对象子元素对象的方法
Nov 29 #Javascript
JavaScript中return用法示例
Nov 29 #Javascript
使用JS正则表达式 替换括号,尖括号等
Nov 29 #Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
Nov 29 #Javascript
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
Nov 29 #Javascript
JS 拦截全局ajax请求实例解析
Nov 29 #Javascript
JS正则替换掉小括号及内容的方法
Nov 29 #Javascript
You might like
php截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
PHP递归删除多维数组中的某个值
2017/04/17 PHP
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
javascript中的107个基础知识收集整理 推荐
2010/03/29 Javascript
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
JavaScript高级程序设计 阅读笔记(十四) js继承机制的实现
2012/08/14 Javascript
基于bootstrap3和jquery的分页插件
2015/07/31 Javascript
js实现滑动到页面底部自动加载更多功能
2017/02/15 Javascript
Vue.js中extend选项和delimiters选项的比较
2017/07/17 Javascript
python实现udp数据报传输的方法
2014/09/26 Python
Python中用于计算对数的log()方法
2015/05/15 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
2017/07/06 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
Python基于分水岭算法解决走迷宫游戏示例
2017/09/26 Python
python matlibplot绘制多条曲线图
2021/02/19 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
Python文件常见操作实例分析【读写、遍历】
2018/12/10 Python
纯python进行矩阵的相乘运算的方法示例
2019/07/17 Python
使用python处理题库表格并转化为word形式的实现
2020/04/14 Python
德国最大的网上鞋店之一:Schuhe24.de
2017/06/10 全球购物
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
国际花店:Pickup Flowers
2020/04/10 全球购物
工程测量与监理专业应届生求职信
2013/11/27 职场文书
品质主管的岗位职责
2013/12/04 职场文书
小学生获奖感言范文
2014/02/02 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
学校清明节活动总结
2014/07/04 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
九华山导游词
2015/02/03 职场文书
北京英语导游词
2015/02/12 职场文书
2017年寒假社区服务活动总结
2016/04/06 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
Python 制作自动化翻译工具
2021/04/25 Python
详解Laravel制作API接口
2021/05/31 PHP
python APScheduler执行定时任务介绍
2022/04/19 Python
Java实现扫雷游戏详细代码讲解
2022/05/25 Java/Android