一段简单的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的强大的功能:树的任何改变都会立即被浏览器渲染,并呈现给用户。