1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 </head> 7 <script type="text/javascript"> 8 window.onload=function(){ 9 var b01=document.getElementById("01"); 10 11 b01.onclick=function(){ 12 var city=document.getElementById("city"); 13 //查询#city下所有li节点 14 var lis=city.getElementsByTagName("li"); 15 alert(lis.length); 16 17 } 18 var b02=document.getElementById("02"); 19 b02.onclick=function(){ 20 var city=document.getElementById("city"); 21 /*childNodes属性会获取包括文本节点在内的所有节点,根据DOM标签间空白也会当成文本节点 22 注意:在IE8及以下的浏览器中,不会将空白文本当成子节点 23 */ 24 var cns=city.childNodes; 25 /* 26 children属性可以获取当前元素的所有子元素 27 */ 28 var cns2=city.children; 29 alert(cns.length); 30 } 31 32 var b03=document.getElementById("03"); 33 b03.onclick=function(){ 34 //返回#phone的第一个节点 35 var phone=document.getElementById("phone"); 36 //phone.childNodes[0]; 37 //firstChild可以获取到当前元素的第一个子节点(包括空白文本节点) 38 var fir=phone.firstChild; 39 /*firstElementChild获取当前元素的第一个子元素 40 不支持IE8及以下的浏览器,如果需要兼容他们不要使用 41 */ 42 fir=phone.firstElementChild; 43 alert(fir.innerHTML); 44 } 45 }; 46 47 </script> 48 <style type="text/css"> 49 *{ 50 margin:0px; 51 padding:0px; 52 } 53 ul{ 54 text-docoration:none; 55 } 56 </style> 57 <body> 58 <!-- 59 getElementsByTagName() 返回当前节点的指定标签名后代节点 60 childNodes 表示当前节点的所有子节点 61 firstChild 表示当前节点的第一个子节点 62 lastChild 表示当前节点的最后一个子节点 63 --> 64 <p>你喜欢的城市是什么?</p> 65 <ul id="city"> 66 <li id="shanghai">上海</li> 67 <li>北京</li> 68 <li>深圳</li> 69 </ul> 70 <p>你的手机的操作系统?</p> 71 <ul id="phone"> 72 <li>IOS</li> 73 <li>Android</li> 74 </ul> 75 <input type="button" value="button1" id="01"> 76 <input type="button" value="button2" id="02"> 77 <input type="button" value="button3" id="03"> 78 </body> 79 </html>