<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <div id="content"> <h1>html</h1> <h1>php</h1> <h1>javascript</h1> <h1>jquery</h1> <h1>java</h1> </div> <script type="text/javascript"> document.write() function clearText() { var content=document.getElementById("content"); // 在此完成该函数 for(var i=content.childNodes.length-1;i>0;i--){ var y=content.childNodes[i]; var x=content.removeChild(y); x=null; } } </script> <button onclick="clearText()">清除节点内容</button> </body> </html>
和
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <div id="content"> <h1>html</h1> <h1>php</h1> <h1>javascript</h1> <h1>jquery</h1> <h1>java</h1> </div> <script type="text/javascript"> document.write() function clearText() { var content=document.getElementById("content"); // 在此完成该函数 for(var i=content.childNodes.length;i>0;i--){ var y=content.childNodes[i]; var x=content.removeChild(y); x=null; } } </script> <button onclick="clearText()">清除节点内容</button> </body> </html>
有什么不一样?为什么后者没显示?
程序中一般的下标都是从0开始的,也就是最后一个元素的下标是该数组或者该对象的长度-1。如果你都写length的话有时候程序会出现意想不到的结果