全ての要素に関数を適用

console.log はFirebugの関数。
IE6/Firefox2/Opera9で確認。

function treeach (f, elem) {
	f(elem);
	var ns = elem.childNodes;
	if (!ns)
		return;
	for (var i = 0; i < ns.length; i++)
		treeach(f, ns[i]);
} 

function test (e) { 
	console.log("->" + e.nodeName);
}

treeach(test, document);

これはタグだけが対象ではないので、そういう場合は

function test (e) { 
	if (e.tagName)
		console.log("->" + e.nodeName);
}

とする。