您的位置:首页 > Web前端 > HTML

利用DOM节点关系访问HTML元素

2017-11-22 10:33 387 查看
一 介绍
一旦获取了某个元素,由于元素实际与DOM树的某个节点对应,因此我们完全可以利用节点之间的父子关系、兄弟关系来访问HTML元素。
下面应用利用节点关系访问HTML元素。
 
二 代码

<!DOCTYPE html>
<html>
<head>
<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
<title> 根据节点关系访问HTML元素 </title>
<style type="text/css">
/* 定义改变背景色的CSS,表示被选中的项 */
.selected {
background-color:#66f
}
</style>
</head>
<body>
<ol id="books">
<li id="java">疯狂Java讲义</li>
<li id="ssh">轻量级Java EE企业应用实战</li>
<li id="ajax" class="selected">疯狂Ajax讲义</li>
<li id="xml">疯狂XML讲义</li>
<li id="ejb">经典Java EE企业应用实战</li>
<li id="workflow">疯狂Android讲义</li>
</ol>
<input type="button" value="父节点"
onclick="change(curTarget.parentNode);"/>
<input type="button" value="第一个"
onclick="change(curTarget.parentNode.firstChild.nextSibling);"/>
<input type="button" value="上一个"
onclick="change(curTarget.previousSibling.previousSibling);"/>
<input type="button" value="下一个"
onclick="change(curTarget.nextSibling.nextSibling);"/>
<input type="button" value="最后一个"
onclick="change(curTarget.parentNode.lastChild.previousSibling);"/>
<script type="text/javascript">
var curTarget = document.getElementById("ajax");
var change = function(target)
{
alert(target.innerHTML);
}
</script>
</body>
</html>

 

 

三 运行结果



四 运行说明
需要指出的是,<ol>节点之间一共包含13个子节点,不不是6个子节点,因为在每两个<li>节点之间都有一片空白(换行和回车),每片空白也被当成了<ol>元素的子节点,因此访问当前节点的上一个节点是curTarget.previousSibling.previousSibling





大小: 11.6 KB

查看图片附件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: