通过节点之间的关系来访问节点树中的节点,通常被称为“定位节点”(或导航节点,navigating nodes)。
在 XML DOM 中,节点关系被定义为节点的属性:
parentNodechildNodesfirstChildlastChildnextSiblingpreviousSibling下图展示了 books.xml 中节点树的一部分,并说明了节点之间的关系:
所有节点都只有一个父节点。下面的代码导航到
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = xmlDoc.getElementsByTagName("book")[0];
document.getElementById("demo").innerHTML = x.parentNode.nodeName;
}
运行实例 »点击 "运行实例" 按钮查看在线实例
xmlDoc 中某些浏览器可能会将空白或换行视为文本节点。这会在使用以下属性时产生问题:
为了避免导航到空的文本节点(元素节点之间的空格和换行符),我们使用一个函数来检查节点的类型:
function get_nextSibling(n) {
var y = n.nextSibling;
while (y.nodeType != 1) {
y = y.nextSibling;
}
return y;
}
有了上面的函数,我们就可以使用 get_nextSibling(node) 来代替 node.nextSibling 属性。
元素节点的类型为 1。如果同级节点不是元素节点,则移动到下一个节点,直到找到元素节点。
下面的代码显示第一个
运行实例 »
点击 "运行实例" 按钮查看在线实例
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
71万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习