jquery中this对象

本文深入探讨了在jQuery中使用this与$(this)的区别,并通过实例展示了如何正确地获取和操作DOM元素,特别是对于自定义属性和class属性的获取方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虽然直接用this.href可以获得html元素的属性值,但是自定义的属性值无法获取,另外,class属性值也无法获取,得到的值都是undefined

下面是我看到的比较好的理解思路


通常我们为了简便直接使用$(),实际上,该函数省略了一个参数context,即$(selector)=$(selector,document).如果指定context,可以指定context为一个dom元素集或者jquery对象。那么依照,$()返回的是jquery对象这一结论,我们可以得出$(this)得到的是一个jquery对象.我们可以使用万能的alert()方法打印出一个对象:

通常我们为了简便直接使用$(),实际上,该函数省略了一个参数context,即$(selector)=$(selector,document).如果指定context,可以指定context为一个dom元素集或者jquery对象。
那么依照,$()返回的是jquery对象这一结论,我们可以得出$(this)得到的是一个jquery对象.我们可以使用万能的alert()方法打印出一个对象:
alert($(‘#btn’));显示的结果:是一个object,不用考虑,该object自然是jquery的对象咯。也即是说我们用通过$(‘#btn’)来调用jquery的方法和属性等

今天用了jquery,感觉总是怪怪的。

  一开始,以为this就是当前匹配的元素,可以直接用this来调用this.css教程('css');结果没反应。依稀记得书上这样写$(this).css('css'),对了。

  然后调试的时候想看目前匹配的元素是哪个,用了$(this).id,结果是undefined,换了this.id对了。

  这时候才茫然反应过来,this是网页特效里定义的,代表的就是目前的元素,而css这些是jquery定义的属性方法,所以必须是jquery对象才可以。而$(this)就是获得目前匹配的元素的DOM对象,所以就可以调用jquery定义的属性方法...

$(this)生成的是什么
$()生成的是什么呢?实际上$()=jquery(),那么也就是说返回的是一个jquery的对象。
题外话:通常我们为了简便直接使用$(),实际上,该函数省略了一个参数context,即$(selector)=$(selector,document).如果指定context,可以指定context为一个dom元素集或者jquery对象。

那么依照,$()返回的是jquery对象这一结论,我们可以得出$(this)得到的是一个jquery对象.我们可以使用万能的alert()方法打印出一个对象:
alert($('#btn'));显示的结果:
 该图红色框勾选出来的是一个object,不用考虑,该object自然是jquery的对象咯。也即是说我们用通过$('#btn')来调用jquery的方法和属性等。
 
this代表什么?
this,编程的人都知道this表示上下文所处的这个对象,这个自然是不错的,可是这个对象到底是个什么对象呢?加入js里面也有getType的话返回的值会是什么呢

$('#btn').bind("click",function(){

alert(this);
alert($(this));
});


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值