终于做出来了,看了半天都不知道怎么错的,后来想到X没有前一个节点了,所以才会显示不出来,然后现在就做出来了。但现在有一个疑问:不是说,如果没有前一个节点的话,就显示NULL吗?代码快照是我后来做好的,现在我复制一个有问题的代码,求解释,为什么最后一个不能运行:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>nextSibling</title>
</head>
<body>
<ul id="u1">
<li id="a">javascript</li>
<li id="b">jquery</li>
<li id="c">html</li>
</ul>
<ul id="u2">
<li id="d">css3</li>
<li id="e">php</li>
<li id="f">java</li>
</ul>
<script type="text/javascript">
function get_nextSibling(n){
var x=n.nextSibling;
while (x.nodeType!=1){
x=x.nextSibling;}
return x;
}
function get_previousSibling(n){
var x=n.previousSibling;
while (x.nodeType!=1){
x=x.previousSibling;}
return x;
}
var x=document.getElementsByTagName("li")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.innerHTML);
var y=get_nextSibling(x);
document.write("<br />nextsibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.innerHTML);
var z=get_previousSibling(x);
document.write("<br><br>previousSibling:"+z.nodeName+"="+z.innerHTML);</script>
</body>
</html>