HTMLCollection 接口 - JavaScript DOM
HTMLCollection 接口
HTMLCollection
是一个节点对象的集合,只能包含元素节点(element),不能包含其他类型的节点。它的返回值是一个类似数组的对象,但是与NodeList
接口不同,HTMLCollection
没有forEach
方法,只能使用for
循环遍历。
返回HTMLCollection
实例的,主要是一些Document
对象的集合属性,比如document.links
、document.forms
、document.images
等。
document.links instanceof HTMLCollection // true
HTMLCollection
实例都是动态集合,节点的变化会实时反映在集合中。
如果元素节点有id
或name
属性,那么HTMLCollection
实例上面,可以使用id
属性或name
属性引用该节点元素。如果没有对应的节点,则返回null
。
// HTML 代码如下 // var pic = document.getElementById('pic'); document.images.pic === pic // true
上面代码中,document.images
是一个HTMLCollection
实例,可以通过元素的
id
属性值,从HTMLCollection
实例上取到这个元素。
HTMLCollection.prototype.length
length
属性返回HTMLCollection
实例包含的成员数量。
document.links.length // 18
HTMLCollection.prototype.item()
item
方法接受一个整数值作为参数,表示成员的位置,返回该位置上的成员。
var c = document.images; var img0 = c.item(0);
上面代码中,item(0)
表示返回0号位置的成员。由于方括号运算符也具有同样作用,而且使用更方便,所以一般情况下,总是使用方括号运算符。
如果参数值超出成员数量或者不合法(比如小于0),那么item
方法返回null
。
HTMLCollection.prototype.namedItem()
namedItem
方法的参数是一个字符串,表示id
属性或name
属性的值,返回当前集合中对应的元素节点。如果没有对应的节点,则返回null
。
// HTML 代码如下 // var pic = document.getElementById('pic'); document.images.namedItem('pic') === pic // true
Collection.namedItem('value')
等同于Collection['value']
。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!