62,039
社区成员
发帖
与我相关
我的任务
分享
有一个HTML代码是这样的<p id="test">前面<div><div>测试</div></div></p>
,前面<div><div>测试</div></div>
,<script>
function answer(arg) {
arg ? alert("Yes") : alert("No");
}
</script>
<p id="test">前面<div id="d1"><div id="d2">测试</div></div></p>
<script>
answer(document.getElementById("test").canHaveHTML);//true
alert(document.getElementById("test").outerHTML);//<p id="test">前面
alert(document.getElementById("test").childNodes.length);//1 ,有一个子元素,是否为d1呢
alert(document.getElementById("test").childNodes[0].childNodes.length);//1 ,如果上面指的是d1,那么这里应该也得到1,即d1有一个子元素d2,但这里得到0
//那么 test.childNodes[0],即 p id="test"的子元素指的是哪个呢
alert(document.getElementById("test").childNodes[0].id);//undefined 很明显不是d1,也不是d2,否则 不会是undefined
alert(document.getElementById("test").childNodes[0].tagName);//undefined 更加确定不是d1,也不是d2. 否则会弹出 "DIV"
//接着就怀疑,test的这个childnode指的就是这两个字"前面"
//将前面二字删除,继续alert test.childnodes.length已经是0了。 真相大白了
</script>
<p>asdfasdfasdf</p>
<p style="line-height: 350%">asdfasdfasdf<br/><div>asdfasdfasdf<br/>asdfasdf</div></p>
<p>asdfasdfasdf</p>
<p> </p>
<P style="color: #000; font-size: 14px" id="c_55">
I Support Your Perspective<div class=textDiv><div class=contentDiv>这还是我说的</div></div>
</P>
<p id="test">前面</p><div><div>测试</div></div><p></p>