很多人对$(this)和this的用法和区别傻傻分不清楚,今天我们就一起来研究一下
首先$(this)是Jquery中的对象,而this是html中的元素,他相当于一个指针。
我们先写html元素
<ul>
<li value="1">1</li>
<li value="2">2</li>
<li value="3" title="Leon">3</li>
<li value="4">4</li>
<li value="5">5</li>
</ul>
js代码
$('li').click(function(){
(this);
(this.value);
($(this));
})
当我们点击第三个li时,各个值分别如下
//<li value="3">3</li>
//3
//[li, context: li]
所以说this是html中返回的类集合([object HTMLImageElement]),而$(this)返回的是Jquery的集合([object Object ])
这就很明白了,就是当我们有这种方法的时候,我们才会去用。比如我们不能用$(this).value 去获得li的value值,是因为这不符合Jquery的语法,同样的我们也不能用(‘title’,’Leon’),因为js原生里面也没有这种方法。