【DOM学习】nextSibling节点的用法

<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
	<ol id="list">
		<li id="one">one</li>
		<li id="two">two</li>
		<li id="three">three</li>
		<li id="four">four</li>
		<li id="five">five</li>
	</ol>
	<input type="button" value="上一个" οnclick="change(curTarget.previousSibling.previousSibling);"/>
	<script type="text/javascript">
		var curTarget = document.getElementById("three");
		var change = function(target)
		{
			alert(target.innerHTML);
		}
</script>
</body>
</html>

这是要求第三个(three)节点的前一个兄弟节点(two)的用法,很奇怪为什么代码里面用到的两次previousSibling,那不就是one了嘛?

果然是我想当然了,原来<ol>标签的子节点不只是5个,每两个<li>之间有空格和换行。。。。,必须向上处理两个node才行,查资料以后发现只有IE会支持不留空白,就是向上一个节点,很神奇啊。。。。

发布了21 篇原创文章 · 获赞 3 · 访问量 8万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章