transition.append?
It could create a placeholder node object that is materialized and appended to the parent when the transition starts, a bit like enter nodes. Or even simpler, it creates the DOM node immediately, but doesn’t append it to the DOM until the transition starts. That might perform well enough…
(If we use placeholder objects rather than elements, we’d need to make sure chained transition.append worked, of course, and define the behavior if a child transition starts before the parent transition. In that case, the child nodes are probably off-screen?)
This would imply that you couldn’t re-select the appended nodes until the transition starts, but that seems like a reasonable compromise.
+1