使用 querySelectorAll()。方法返回的结果是有序的吗?

2024-03-30

我正在尝试编写一个适用于多个页面的js代码。 我正在尝试使用 querySelectorAll() 来获取 DOM 中的元素。

我需要订购元素。为此,我可以使用 xPath 或选择器(我更喜欢使用选择器,但 xPath 也可以)。问题是:
querySelectorAll() 返回的 NodeList 中的元素是否按照标签在 HTML 中出现的顺序排序?

注意:我想添加标签:querySelectorAll


返回的节点列表是有序的。快速测试证明了这一点:

document.querySelectorAll("body, head")[0]; //Returned [object HTMLHeadElement]

显然,<head>标签出现在之前<body>在 HTML 文档中。 NodeList 的第一个元素也是<head>元素,即使选择器显示body在“头”之前。

From http://www.w3.org/TR/selectors-api/#queryselectorall http://www.w3.org/TR/selectors-api/#queryselectorall:

The querySelectorAll()NodeSelector 接口上的方法必须,当 调用时,返回一个包含所有匹配元素的 NodeList 节点子树内的节点,按文件顺序。如果没有 对于此类节点,该方法必须返回一个空的 NodeList。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 querySelectorAll()。方法返回的结果是有序的吗? 的相关文章

随机推荐