虽然HTML中的接口数量非常多,但是结构很简单。首先是HTMLDocument和HTMLElement,这两个接口分别继承自Core标准中Document和Element,它们在原来的基础上添加了HTML特有的属性。然后是两个Collection: HTMLCollection和HTMLOptionsCollection。
HTMLCollection用于表示HTML中相同类型节点的集合。例如:所有的div,所有的img,所有的span等等。 HTMLCollection接口只有三个属性:
length: 包含节点的个数item(index): 按索引获取节点namedItem(name): 按名称获取节点。 代码示例:html
<div id='div1'>a</div> <div id='div2' name='two'>b</div>js
var divCollection = document.getElementsByTagName('div'); console.log(divCollection instanceof HTMLCollection); console.log(divCollection.length); console.log(divCollection.item(0).textContent); console.log(divCollection.namedItem('two').textContent);HTMLOptionsCollection和HTMLCollection接口类似,专门用来保存Select标签中Option标签所对应的HTMLOptionElement类型节点的集合。它比HTMLCollection接口多一个setLength(length)方法,用来指定Option节点的个数,其他方面和HTMLCollection接口完全相同。
HTMLDocument继承自Core子标准中的Document接口,用于表示HTML中的文档。HTMLDocument在Document的基础上增加了5个方法属性,3个读写属性和8个只读属性。
HTMLElement继承自Core的Element接口,新增了5个属性:
className:即class属性,因为class时ES的关键词,故使用classNameid: idlang: languagedir: directiontitle: 节点的标题,它的作用时当鼠标停留在某个节点上时弹出相应的提示信息。个人wx:iotzzh 前端公众hao:前端微说