从jQuery对象获取基本元素

从jQuery对象获取基本元素,jquery,Jquery,我正在努力在这里找到正确的术语,但是如果您有jQuery对象 $('#MyObject') …是否可以提取基本元素?含义,相当于: document.getElementById('MyObject') 可以,使用.get(index)。根据报告: .get()方法授予对每个jQuery对象下面的DOM节点的访问权 我想这就是你想要的。我认为您也可以像常规数组一样引用它,使用: $('#MyObject')[0]; 但我不确定这是否会一直奏效。坚持第一种语法。jQuery对象是一组元素。在

我正在努力在这里找到正确的术语,但是如果您有jQuery对象

$('#MyObject')
…是否可以提取基本元素?含义,相当于:

document.getElementById('MyObject')
可以,使用
.get(index)
。根据报告:

.get()
方法授予对每个jQuery对象下面的DOM节点的访问权

我想这就是你想要的。我认为您也可以像常规数组一样引用它,使用:

$('#MyObject')[0];

但我不确定这是否会一直奏效。坚持第一种语法。

jQuery对象是一组元素。在您的例子中,一个元素的集合。这与某些其他库不同,这些库包装单个元素,并为返回多个匹配项的选择器提供备用语法


并且已经解释了如何访问集合中的第一个(索引0)元素。

我在我的盒子上提供的所有浏览器上测试了Aaron的语句:

$('#MyObject').get(0);
vs

据我所知,这只是个人喜好的问题。

从功能上讲,这两个语句对于现有和不存在的元素都是等效的。我测试了以下浏览器:Chrome27.0、FF21.0、IE10、IE9、IE8、IE7、IE6

在我进行的速度测试中,并不总是能够分辨出哪种变化更快;结果并不总是一致的,即使是在同一个浏览器上。对于速度测试,我只测试了现有的元素。我的测试结果是。

当我使用console.log
$('#MyObject)时。使用chrome时,html标记内的get(0)
:在
之前和
:在
之后。知道这些是什么意思吗?
$('#MyObject').get(0);
$('#MyObject')[0];