osh*_*nen 38 javascript jquery
这三种形式有什么区别:
this
$this
$(this)
Run Code Online (Sandbox Code Playgroud)
Nic*_*ver 51
在典型的使用中,您通常会看到它们($this
使用情况可能会有所不同):
this
- 指你当前处理的处理程序中的DOM元素,但这可能是完全在其他情况下的另一个对象,但它始终是上下文.$this
- 通常由var $this = $(this)
jQuery包装版本的缓存版本创建以提高效率(或链接$(this)
在许多情况下获得相同).$(this)
- jQuery包装的元素版本,因此您可以访问其所有方法(特别是那些方法$.fn
).Que*_*tin 32
this
是调用方法的对象$this
是一个命名不佳的变量,没有特殊含义$(this)
$
用this
唯一的参数调用命名不佳的函数在jQuery事件处理程序中:
this
- 是您为其分配事件处理程序的DOM元素$(this)
- 是从该元素创建的jQuery对象$this
- 通常是一个保持结果的变量 $(this)
更普遍:
函数内部的this是指调用函数的对象或原语.当函数用作构造函数时,它引用正在构造的新对象.任何函数之外都this
指的是全局对象(window
在非严格模式下).
$这是一个变量名.在JavaScript中,变量名称可以从$
.有些人喜欢将它用作包含jQuery对象的变量的前缀:
var body = document.body; // no prefix for a plain DOM object
var $body = jQuery('body'); // prefix for the same object wrapped in jQuery
var $this = $(this);
Run Code Online (Sandbox Code Playgroud)$(this)是一个函数调用,其中$
是函数名,this
是它的参数:
var $ = alert;
$(this); // [object Window]
Run Code Online (Sandbox Code Playgroud)
$
本身没有任何特殊含义.但是jQuery将$()
函数定义为一种简写jQuery()
.根据其参数,此函数可以执行许多不同的操作.