是否存在非IE等价物“;所有“;元素集合

Is there a non-IE equivalent of "all" element collection?

本文关键字:所有 元素 集合 等价物 存在 IE 是否      更新时间:2023-09-26

当编写要在IE中执行的javascript函数时,我可以编写类似的东西

var myObj = document.getElementByID('myTable');
var firstRow = myObj.rows[0];
var allRowObjects = firstRow.all;

在IE之外,".all"不会被识别,所以当在其他浏览器中运行时,我会遇到问题。我找到了对querySelectorAll("*")函数的引用,这似乎是获得相同节点列表的环境安全方法,但这是".all"在做什么吗?我是否应该使用不同的模拟,在哪里可以找到"所有"的文档?

Microsoft实际上承认.all不是任何标准的一部分,从IE 11开始就不再受支持,并建议您使用getElementById

all集合为每个有效的HTML包含一个元素对象标签如果有效标记具有匹配的结束标记,则表示两个标记通过相同的元素对象。

文档的所有集合始终返回的集合包括对HTML、HEAD和TITLE对象的引用标记是否存在于文档中。

如果BODY标记不存在,但其他HTML标记存在,则BODY对象已添加到所有集合中。如果文档包含无效或未知标签,集合中每个标签包含一个元素对象。与有效的结束标记不同,未知的结束标记由自己的结束标记表示元素对象。元素对象的顺序是HTML源顺序尽管集合指示了标记的顺序,但它确实不指示层次结构。

name属性仅适用于某些元素,例如表单元素。如果vIndex设置为与name属性值匹配的字符串在name属性不适用的元素中,则该元素将不会添加到集合中。