【问题标题】:Turn '$(this)' jquery to javascript 'this' [duplicate]将 '$(this)' jquery 转换为 javascript 'this' [重复]
【发布时间】:2015-10-06 13:38:12
【问题描述】:

是否可以将 jquery '$(this)' 反转为 javascript 'this'?

如何做到这一点?

【问题讨论】:

  • $(this)[0] 或 $(this).get(0)
  • 嗯,就用this开始吧?

标签: javascript jquery


【解决方案1】:

jQuery 基于集合,允许您使用索引器表示法 ([]) 或 get 方法访问该集合的元素。

所以如果你有一个 jQuery 集:

var set = $(this);

...您可以通过set[0] 到set[set.length - 1] 和set.get(0) 到set.get(set.length - 1) 访问其元素(get 还支持从末尾开始索引的负索引)。

对于$(this),当然,您根本不需要使用$()——直接使用this即可。只要您有原始 DOM 引用,无论是 this 或 event.target 还是其他,都是如此。

【讨论】:

    【解决方案2】:

    jQuery 或 $ 主要只是一个返回 jQuery 对象的包装函数。因此,删除 $ 即可获得正常的 DOM 元素 this。

    this // DOM ELement
    $(this) // jQuery object
    this // Again just a DOM Element
    

    您无需再做任何事情。 this 将永远是原始的 DOM 元素,这是因为你正在包装它,它会返回一个 jQuery 对象。

    jQuery 提供了.get,它也提供了相同的功能,但如果this 是一个集合,则它提供了获取特定元素的便利。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-05
      • 1970-01-01
      • 1970-01-01
      • 2013-05-26
      • 2012-05-26
      • 1970-01-01
      • 2015-01-22
      • 2013-03-20
      相关资源
      最近更新 更多