首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在jQuery中,$( this )和this有什么不同?

在jQuery中,$( this )和this有什么不同?
EN

Stack Overflow用户
提问于 2010-09-10 22:41:03
回答 7查看 3.8K关注 0票数 19

在jQuery中,$(this)this有什么不同?为什么它们有时给出相同的结果,而有时表现不同?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-09-10 22:43:14

$(this)用jQuery功能包装了this

例如,以下代码将失败:

代码语言:javascript
运行
复制
$('.someDiv').onClick(function(){
    // this refers to the DOM element so the following line would fail
    this.fadeOut(100);
});

所以我们将this包装在jQuery中:

代码语言:javascript
运行
复制
$('.someDiv').onClick(function(){
    // wrap this in jQuery so we can use jQuery fadeOut
    $(this).fadeOut(100);
});
票数 26
EN

Stack Overflow用户

发布于 2010-09-10 22:45:06

$(this)用jQuery函数装饰this指向的任何对象。典型的用例是让this引用一个DOM元素(比如<div>)。然后,通过编写$(this),您可以使用该<div>上的所有jQuery应用编程接口函数。

如果this已经引用了一个jQuery对象--通常是一个经过jQuery修饰的DOM对象--那么调用$(this)将不会有任何效果,因为它已经被修饰过了。

票数 10
EN

Stack Overflow用户

发布于 2010-09-10 22:43:53

如果在当前上下文中,如果this不是jQuery对象,则可以通过将其包装在jQuery中使其成为$()元素。当您的元素已经是jQuery表达式的结果时,这种情况下的this已经是一个jQuery对象。因此,在这种情况下,它们的工作方式类似

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3685508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档