为什么我们在jquery中使用$(this)

时间:2015-07-14 09:40:36

标签: javascript jquery

我一直在搜索为什么我们在jQuery中使用$(this)。所以我想在stackOverFlow上问它,我是jQuery的新手,我非常好奇知道这个。

  <h1>Example Header</h1>

  <script>
    $('h1').on('click',function(){
      $(this).hide(); //???
    });
  </script>

4 个答案:

答案 0 :(得分:2)

这里this指的是我们正在使用的当前DOM元素(在哪个事件被调用,比如Click)。例如:

$('h1').on('click',function(){

这将引用调用该事件的当前DOM元素h1

$括起来使它成为一个jquery对象。

所以$(this)基本上是指jquery h1 object

所以$(this) = $('h1')其中h1是触发事件的事件。

答案 1 :(得分:1)

点击事件中this的值是一个DOM元素(被点击的元素)。

使用$(this)将其转换为jQuery对象。 DOM元素没有hide()方法,但是jQuery会添加这些方法,然后可以调用许多其他方法。

答案 2 :(得分:1)

  1. 此关键字的值与函数本身无关,函数的调用方式决定了该值。
  2. 根据函数的调用方式,它可以是动态的。
  3. 您可以通过.call(),. apply()和.bind()更改此上下文。
  4. Understanding the “this” keyword in JavaScript

答案 3 :(得分:1)

&#34;这&#34;是对调用当前函数的成员的引用...

然后你可以将它包装在jquery函数$()中来选择它,就像你对另一个选择器所做的那样。在提供的示例中,这指的是h1