DOM 1

 首先getAttribute  setAttribute只能被元素节点对象调用。(属性节点和文本节点调用不了)

我们可以通过一下三种方式得到元素:

document.getElementById();//返回唯一一个元素节点
document.getElementsByTagName();//返回的是对象数组,所以Elements后面要加s,不要忘记。
document.getElementsByName();   //返回的是对象数组
document.getElementsByClassName();//较新的浏览器才支持
getAttribute()返回的是属性的值.
getAttribute()改变属性的值.
<a id='Node' href='adc'>百度</a>
var thisNode=document.getElementById('Node');//获取a元素节点
 alert(thisNode.getAttribute('href'));//显示的是href属性的值:abc.
 change=thisNode.setAttribute("href","a list of goods");//把href属性的值改为:a list of goods
alert(thisNode.getAttribute("href"));//属性href的值为:a list of goods.
 

childNodes属性:可以获取任何一个元素的所有子元素(或者说任何一个节点下的所有子节点:包含文本节点 元素节点);注意返回的是数组,且Nodes有s

firstChild属性 获取的是第一个字节点.和element.childNodes[0]完全等价。

lastChild属性 获取的是最后一个子节点,和element.childNodes.[element.childNodes.length-1]完全等价

注意:节点之间的空白符,在firefox、chrome、opera、safari浏览器是文本节点

  如下:

     ul元素下的子节点:IE是3个,其它浏览器是7个。

    

原文地址:https://www.cnblogs.com/hi-shepherd/p/6114121.html