HTMLAllCollection
已弃用:此特性不再推荐。虽然某些浏览器可能仍然支持它,但它可能已经从相关的网络标准中删除,可能正在删除过程中,或者可能仅为兼容性目的而保留。请避免使用它,如果可能,请更新现有代码;请参阅本页底部的兼容性表格以指导您的决策。请注意,此特性可能随时停止工作。
HTMLAllCollection 接口表示文档中所有元素的集合,可以通过索引(类似于数组)和元素的 id 进行访问。它由 document.all 属性返回。
HTMLAllCollection 的形状与 HTMLCollection 非常相似,但存在许多细微的行为差异——例如,HTMLAllCollection 可以像函数一样调用,并且其 item() 方法可以接受一个字符串参数,该字符串代表元素的 id 或 name 属性。
实例属性
HTMLAllCollection.length只读-
返回集合中项目的数量。
实例方法
HTMLAllCollection.item()-
返回集合中指定偏移量的元素,或者返回
id或name属性值与给定字符串匹配的元素。如果没有找到元素,则返回null。 HTMLAllCollection.namedItem()-
返回集合中第一个
id或name属性与给定字符串名称匹配的 元素,如果找不到匹配的元素,则返回null。
在 JavaScript 中使用
索引访问
除了上述方法外,HTMLAllCollection 中的元素还可以通过整数索引和字符串属性名进行访问。HTML id 属性可能包含 : 和 . 作为有效字符,这需要使用方括号表示法进行属性访问。collection[i] 等同于 collection.item(i),其中 i 可以是整数、包含整数的字符串,或者代表 id 的字符串。
作为函数调用
HTMLAllCollection 对象是可调用的。当它不带参数或以 undefined 调用时,它返回 null。否则,它返回的值与使用相同参数调用 item() 方法时返回的值相同。
特殊类型转换行为
出于历史原因,document.all 是一个对象,但在以下方面表现得像 undefined:
这些特殊行为确保了像以下这样的代码
if (document.all) {
// Assume that we are in IE; provide special logic
}
// Assume that we are in a modern browser
即使代码在出于兼容性原因实现了 document.all 的浏览器中运行,也能提供现代行为。
然而,在所有其他上下文中,document.all 仍然是一个对象。例如:
规范
| 规范 |
|---|
| HTML # the-htmlallcollection-interface |
浏览器兼容性
加载中…