code: function walk(dom, fn) {
    if (dom) {
      // stop the recursion
      if (fn(dom) === false) return
      else {
        dom = dom.firstChild
  
        while (dom) {
          walk(dom, fn)
          dom = dom.nextSibling
        }
      }
    }
  }
docs: Walk down recursively all the children tags starting dom node
  @param   { Object }   dom - starting node where we will start the recursion
  @param   { Function } fn - callback to transform the child node just found