XML DOM firstChild 属性
XML DOM Element 对象的 firstChild 属性返回选定元素的第一个子节点
如果选定的节点没有子节点,则该属性返回 NULL
语法
elementNode.firstChild
Firefox 以及大多数其它的浏览器,会把节点间生成的空的空格或者换行当作文本节点,而 Internet Explorer 会忽略节点间生成的空白文本节点
因此,在下面的范例中,我们会使用一个函数来检查第一个子节点的节点类型
元素节点的节点类型是 1,因此如果第一个子节点不是一个元素节点,它就会移至下一个节点,然后继续检查此节点是否为元素节点
整个过程会一直持续到第一个元素子节点被找到为止
通过这个方法,我们就可以在所有的浏览器中得到正确的结果
如果想要了解更多有关浏览器差异的知识,可以访问我们的 XML DOM 浏览器
范例
下面的范例取得第一个子节点
// 获取第一个子节点 function get_firstchild(n) { x=n.firstChild; while (x.nodeType!=1) { x=x.nextSibling; } return x; } xmlDoc=loadXMLDoc("/static/media/dom/books.xml"); x=xmlDoc.documentElement; firstNode=get_firstchild(x); for (i=0;i<firstNode.childNodes.length;i++) { if (firstNode.childNodes[i].nodeType==1) { // 输出节点元素与值 document.write(firstNode.childNodes[i].nodeName); document.write(" = "); document.write(firstNode.childNodes[i].childNodes[0].nodeValue); document.write("<br>"); } }