imperative-slot-layout-invalidation-001.html (859B)
1 <!doctype html> 2 <meta charset="utf-8"> 3 <title>Imperative slotting API: Invalidation on re-assignment</title> 4 <link rel=help href="https://bugzilla.mozilla.org/show_bug.cgi?id=1752694"> 5 <link rel=match href="imperative-slot-layout-invalidation-001-ref.html"> 6 <link rel=author href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez"> 7 <link rel=author href="https://mozilla.org" title="Mozilla"> 8 <div id="host"> 9 <span>one</span> 10 </div> 11 <script> 12 let host = document.getElementById("host"); 13 14 function assignFirstChild() { 15 host.shadowRoot.querySelector("slot").assign(host.firstElementChild); 16 } 17 18 host.attachShadow({ mode: "open", slotAssignment: "manual" }).innerHTML = "<slot>Fallback</slot>"; 19 20 assignFirstChild(); 21 22 host.getBoundingClientRect(); 23 24 host.insertAdjacentHTML("afterbegin", "<span>two</span>"); 25 26 assignFirstChild(); 27 </script>