$('#elementID')
返回的对象和返回的对象有什么区别document.getElementById('elementID')
?
$('#elementID')
返回一个具有大量函数的对象,这些函数都对document.getElementById('elementID')
. 把 jQuery 对象想象成一个document.getElementById('elementID')
坐在里面的巨型机器人。
您可以通过以下方式访问包装的 DOM 对象:
$('#elementID').get()
$('#elementID').get(0)
$('#elementID')[0]
如果选择器匹配的元素不止一个,例如,您可以使用$elements.get(1)
or访问第二个元素$elements[1]
。
此外,您如何轻松地从一种转换为另一种?
要使用 jQuery 的便捷函数包装对象,只需将其传递给$
函数:
$(document.getElementById('foo'))
$(document.querySelectorAll('.foo:not(.bar)'))
反之,使用.get()
或括号表示法。
在您的具体示例中,您不需要做任何特别的事情,因为this
它实际上是一个普通的 DOM 对象。这就是为什么你经常看到回调中到处都是$(this)
.