blob: b070b7e428d06dc5e2f8c72fa605c495775d137a [file] [log] [blame] [edit]
<!doctype html>
<title>IntersectionObserver with a fragmented intersection root.</title>
<link rel="help" href="https://bugzil.la/2013439">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
.multicol {
width: 200px;
height: 100px;
columns: 2;
column-fill: auto;
gap: 0;
background: grey;
}
.io-root {
width: 100px;
height: 200px;
}
.content {
width: 100px;
height: 100px;
background: purple;
}
</style>
<div class=multicol><div id=r class=io-root>
<div style="height: 100px;"></div>
<div id=c class=content></div>
</div></div>
<script>
promise_test(async function() {
const options = {
root: r,
threshold: 1.0,
};
let observer;
let entries = await new Promise(resolve => {
observer = new IntersectionObserver(entries => {
resolve(entries);
observer.disconnect();
}, options);
observer.observe(c);
});
assert_equals(entries.length, 1, "Expect one entry since we observe one element");
assert_true(entries[0].isIntersecting, "Should be intersecting the root");
});
</script>