这里哪错了?没有输出

<!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">

   var x=document.getElementById("a");

   document.write(x.nextSibling.innerHTML);

   var y=x.parentNode;

   document.write(y.innerHTML);

   var z=y.nextSibling;

   document.write(z.innerHTML);

</script>

</body>

</html>

第二个可以输出,第一个和第三个输出undefined

qq_小白_7
浏览 1259回答 1
1回答

liang_T

第一和第三,x.nextSibling得到是下一个文本节点,而不是你想要的html节点,你再加多一个.nextSibling也就是x.nextSibling.nextSibling就能得到你想要的东西了,浏览器间获取节点会存在着差异。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript