从jQuery对象获取基本元素
我努力在这里find正确的术语,但如果你有jQuery对象…
$('#MyObject')
…是否有可能提取基本元素? 意思是,这相当于:
document.getElementById('MyObject')
是的,使用.get(index)
。 根据文件 :
.get()
方法授予对每个jQuery对象底层的DOM节点的访问权限。
$('#MyObject').get(0);
我想这就是你想要的。 我认为你也可以像普通的数组一样引用它:
$('#MyObject')[0];
但我不知道这是否会一直工作。 坚持第一个语法。
一个jQuery对象是一组元素。 在你的情况下,一组元素。 这与某些其他库不同,它们包装单个元素,并为返回多个匹配的select器提供备用语法。
Aaron W和VolkerK已经解释了如何访问集合中的第一个(索引0)元素。
我在我盒子上的所有浏览器上testing了Aaron的声明:
$('#MyObject').get(0);
VS
$('#MyObject')[0];
据我所知,这只是一个个人喜好的问题。
在function上,这两个陈述对现有和不存在的元素都是等价的。 我testing了以下浏览器:Chrome 27.0,FF 21.0,IE10,IE9,IE8,IE7,IE6。
在我运行的速度testing中,不可能总是知道哪个变化更快。 结果并不总是一致的,即使在同一浏览器上。 对于速度testing,我只testing了现有的元素。 我的testing结果在这里 。