一段简单的HTML代码如下: <html> <head> <title>Hacking JavaScript</title> </head> <body> <h1>Hello world!</h1> <p>I am a JavaScript hacker!</p> </body> </html> 页面显示为: 加入一段javascript后代码如下: <html> <head> <title>Hacking JavaScript</title> </head> <body> <h1>Hello world!</h1> <p>I am a JavaScript hacker!</p> <script> var a=document.getElementsByTagName("h1")[0]; var b=document.getElementsByTagName("p")[0]; a.parentNode.insertBefore(b,a); </script> </body> </html> 页面显示变成了: 其中javascript代码中的 a.parentNode.insertBefore(b,a); 是a的父节点中进行插入节点操作,方法insertBefore(node1,node2)的意思是插入node1在node2之前,语序读起来感觉像倒装,不过容易记忆。 <h1>和<p>节点在DOM树和浏览器窗口里都互换了位置。这显示了W3C DOM的强大的功能:树的任何改变都会立即被浏览器渲染,并呈现给用户。