$(this)vs jQuery中的这个

$(this)和jQuery中的$(this)什么区别? 这有两种不同的用法:

  $(document).ready(function() { $("#orderedlist").find("li").each(function(i) { $(this).append( " BAM! " + i ); }); }); $(document).ready(function() { // use this to reset several forms at once $("#reset").click(function() { $("form").each(function() { this.reset(); }); }); }); 

“this”变量引用(在这种情况下为您提供的事件处理程序)到DOM元素。 因此$(this)是一个只包含一个DOM元素的jQuery对象。

当本机DOM API足够时,你应该使用普通的“this”,当你需要jQuery的帮助时,你应该使用$(this)。 你的第二个例子是一个很好的例证; 另一个可能是你只需要一个元素的“id”或“name”。

不同之处在于,它本身就是对事件所依据的dom对象的引用。 $(this)从该dom对象创建一个jquery对象。

编辑:所以使用DOM对象,您将无法访问所有jquery添加的function,但只能访问dom允许的内容。 基本上你可以把它想象成像document.getElementById(id)

$(this)是一个jquery对象,而this是指本机dom对象