W3C对DOM的定义是:一个与系统平台和编程语言无关的接口,程序和脚本可以通过这个接口动态的访问和修改文档的内容、结构和样式。

1998年10月完成了"第一级DOM"(DOMLever1)

兼容性查询:caniuse.com/

一、节点:<p class="属性节点">文本节点<p>

  • 元素节点(p标签节点)
  • 文本节点
  • 属性节点

二、常用方法:

  • document对象方法:getElementById(ie6+)/getElementsByTagName(ie6+)/getElementsByClassName(ie9+)
// className查找的类名:不支持多类名、node查找的指定范围:不传则从html开始查找
function getElementsByClassName(className, node){
	if(typeof className !== 'string'){ return [] }
    if(!node){ node = document.getElementsByTagName('html')[0] }
	if(node.getElementsByClassName){
    	return node.getElementsByClassName(className)
    }else{
        var arr = new Array()
        var elems = node.getElementsByTagName('*')
    	for(var i=0; i<elems.length; i++){
        	if(elems[i].className.indexOf(className) !== -1){
            	arr[arr.length] = elems[i]
            }
        }
        return arr
    }
}
  • 元素节点对象方法: getAttribute(ie8+)/setAttribute(ie6+)