getElementsByClassName是否保持顺序?

4

我正在处理的网页包含按字母顺序排序的一组具有相同类名的

元素。如果我调用document.getElementsByClassName('classname'),我能确定它返回的数组是否按HTML顺序排序吗?

2个回答

6

是的。

该集合表示以集合根为根的子树视图,仅包含与给定过滤器匹配的节点。该视图是线性的。除非有特殊要求,否则集合中的节点必须按照树的顺序排序

https://dom.spec.whatwg.org/#old-style-collections


3

我在“WHATWG博客”中找到了以下声明:

getElementsByClassName(classNames)方法接受一个包含无序一组唯一空格分隔符标记的字符串,表示类。调用该方法时,必须返回一个活动的NodeList对象,其中包含文档中按树顺序指定该参数中指定的所有类的所有元素,通过在空格上拆分字符串获得类。如果参数中没有指定标记,则该方法必须返回一个空的NodeList。如果文档处于quirks模式下,则必须以ASCII不区分大小写的方式执行类的比较,否则必须以区分大小写的方式执行比较。

https://blog.whatwg.org/tag/getelementsbyclassname


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接