<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <div id="con"><p>javascript</p><div>jQuery</div><h5>PHP</h5></div> <script type="text/javascript"> var x=document.getElementById("con"); for(i=0;i<x.childNodes.length;i++){ if(i==0){ var dirt=x.childNodes[0].nodeName; //var dirt = x.firstChild.nodeName } /**/else if(i==x.childNodes.length-1){ var dirt=x.childNodes[x.chidlNodes.length-1].nodeName;//这句有语法错误吗?为什么不执行,会引后面的程序出错的 //var dirt=x.lastChild.nodeName; } else{ } document.write("length长度:"+x.childNodes.length+"<br>") document.write("FOR循环:"+x.childNodes[i].nodeName+" .;. "+x.childNodes[i].nodeValue+" .;. "+x.childNodes[i].nodeType+" .;. "+x.childNodes[i].innerHTML+"..dirt..值为:"/**/+dirt+"<br>"); } document.write("firstChild:"+x.firstChild.nodeName+"<br>");//编号3 document.write("lastChild:"+x.lastChild.nodeName);//编号4 </script> </body> </html>
求教,我的else if这里貌似有问题,但是自己检查了好久也看不出来,程序运行到这里不会继续下去了
var dirt=x.childNodes[x.chidlNodes.length-1].nodeName;这句有问题吗?if里的firstChild就是好的,我在else if里用
//var dirt=x.lastChild.nodeName;
这种方式还是异常的。最后一个问题就是我把if else if这些全屏蔽掉,最后输出的结果里面会有<H5>这块的显示,但是一旦运行if这块后,<H5>就不显示了,这和我的判断思路不符合啊,我想的是firstChild或是lastChild的时候就在打印输出力用dirt表示,打印出来。其余的照常显示,按理说并不影响H5的显示啊?
李晓健
相关分类