Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /selection/shadow-dom/cross-shadow-boundary-6.html - WPT Dashboard Interop Dashboard
<!doctype html>
<html class="reftest-wait">
<head>
<link rel=match href="cross-shadow-boundary-6-ref.html">
</head>
<span id="span">Start
<div>
<template shadowrootmode="open">
<span id="inner1">inner1</p>
<span id="inner2">inner2</p>
</template>
</div>
</span>
<script>
const start = document.getElementById("span").firstChild;
const end = document.querySelector('div').shadowRoot.getElementById("inner2");
async function waitForRAFs() {
return new Promise(resolve => {
window.requestAnimationFrame(() => {
window.requestAnimationFrame(() => {
window.requestAnimationFrame(() => {
resolve();
});
});
});
});
}
async function runTest() {
window.getSelection().setBaseAndExtent(start, 3, end.firstChild, 3);
await waitForRAFs();
window.getSelection().removeAllRanges();
await waitForRAFs();
window.getSelection().setBaseAndExtent(start, 3, end.firstChild, 3);
await waitForRAFs();
document.documentElement.className = "";
}
runTest();
</script>
</html>