DOMおれおれAdvent Calendar 2015 – 14日目分 TreeWalkerというオブジェクトがあります。その名の通り、(DOMの)ツリーを歩き回るオブジェクトです。 例えばこんな構成。(インデント等によるテキストノードはないものとします。) div#root + div#el-1 + div#el-1-1 + div#el-1-1-1 あるノード(#root)を起点に、長子の子孫を巡り(#el-1→#el-1-1→#el-1-1-1)、また戻ってくる(#el-1-1→#el-1→#root)という処理が必要だとします。 普通に関連ノードを参照して移動していくコードはこんな感じです。 var origin = document.querySelector('#root'); var current = origin; // 子孫を巡る while (current.firs
![ツリーを歩き回るならTreeWalkerはどうかな。(DOMおれおれAdvent Calendar 2015 – 14日目) | Ginpen.com](https://cdn-ak-scissors.b.st-hatena.com/image/square/de4af7f62b39439905833504e59ba1e153be6d8b/height=288;version=1;width=512/https%3A%2F%2Fginpen.com%2Fwp-content%2Fthemes%2Fginpen-theme%2Fimg%2Ficon-512.png)