Javascript 正在寻找使用jquery选择XML节点第n个子节点的更快或更好的方法

Javascript 正在寻找使用jquery选择XML节点第n个子节点的更快或更好的方法,javascript,jquery,xml,css-selectors,Javascript,Jquery,Xml,Css Selectors,这是我的密码: var CDs=$(xml).find("CDs"); var NthChild = $(CDs).find("CD:nth-child(index)"); // nth-child 0th element starts at 1 我在这里使用find方法;我必须指定子节点名,它被标注为“CD”。是否有更快或更短的方法,也许不需要我指定子节点的名称(即“CD”)来查找第n个子节点 多谢各位 更新 我找到了一种不需要按名称指定子节点的格式: var NthChild = $(CD

这是我的密码:

var CDs=$(xml).find("CDs");
var NthChild = $(CDs).find("CD:nth-child(index)"); // nth-child 0th element starts at 1
我在这里使用find方法;我必须指定子节点名,它被标注为“CD”。是否有更快或更短的方法,也许不需要我指定子节点的名称(即“CD”)来查找第n个子节点

多谢各位

更新

我找到了一种不需要按名称指定子节点的格式:

var NthChild = $(CDs).children(":nth-child(index)");
将所需的索引放入以下
eq

或者,如果
CD
元素仅位于
CD
下,并且您不担心得到错误的元素:

$(xml).find("CD:eq(0)")

因为:eq()是jQuery扩展,而不是CSS的一部分 规范中,使用:eq()的查询无法利用 本机DOM querySelectorAll()提供的性能提升 方法。要在现代浏览器中获得更好的性能,请使用 $(“您的纯css选择器”).eq(索引)


非常感谢你!非常好。您还可以使用比CSS选择器/jQuery更快、更强大的XPath表达式遍历XMLDocument。谢谢。是的,在jquery之前,我就是这样分解代码的。然而,我正试图最大限度地提高浏览器的兼容性。不过,我认为并非每一行代码都必须重构为jQuery等价物。
$(xml).find("CD:eq(0)")
$(xml).find("CDs CD").eq(index);