$(this)和thisjQuery有什么区别?这有两种不同的用法:
$(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();
});
});
});
Run Code Online (Sandbox Code Playgroud)
Poi*_*nty 10
"this"变量引用(在这种情况下为您提供的事件处理程序)到DOM元素.因此$(this)是一个只包含一个DOM元素的jQuery对象.
当本机DOM API足够时,你应该使用普通的"this",当你需要jQuery的帮助时,你应该使用$(this).你的第二个例子是一个很好的例证; 另一个可能是你只需要一个元素的"id"或"name".
不同之处在于this,它本身是对事件所依据的dom对象的引用.$(this)从该dom对象创建一个jquery对象.
编辑:所以使用DOM对象,您将无法访问所有jquery添加的功能,但只能访问dom允许的内容.基本上你可以认为this它本身就像你一样document.getElementById(id)