This fiddle demonstrates how when an iframe is the target of a DOM manipulation (insertBefore, appendChild, maybe others), it'll fully reload its contents.
<div id='rotate'>
<button data-direction='down'>Iframe ⬆️</button>
<button data-direction='up'>Iframe ⬇️</button>
</div>
<div id='target'>
</div>
<p>
The iframe will reload when it goes from last to first (<tt>insertBefore(iframe, other)</tt>), or from first to last (<tt>appendChild(iframe)</tt>).
There's possibly other DOM manipulations that will cause the iframe to reload as well, especially when it is the target element of the move (not a reference node).
</p>