function doNode(n) { if(n) { if(n.nodeType == 3) { return n.nodeValue; } if(n.nodeType == 1) { var ret = "<" + n.nodeName + ">"; if(n.hasChildNodes()) { var kids = n.childNodes; for(var i = 0; i < kids.length; i++) { ret += doNode(kids[i]); } } ret += ""; return ret; } } return ""; } function go() { show(doNode(document.documentElement)); }