38 lines
922 B
HTML
38 lines
922 B
HTML
<!DOCTYPE html>
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
|
|
<style>
|
|
|
|
#container {
|
|
width: 200px;
|
|
height: 200px;
|
|
background-color: black;
|
|
}
|
|
|
|
#target {
|
|
position: relative;
|
|
top: 100px;
|
|
width: 100%;
|
|
height: 1px;
|
|
background-color: gray;
|
|
}
|
|
|
|
</style>
|
|
|
|
<div id="container"><div id="target"></div></div>
|
|
|
|
<script>
|
|
|
|
promise_test(async function(t) {
|
|
let intersections = 0;
|
|
|
|
const observer = new IntersectionObserver(entries => ++intersections);
|
|
observer.observe(document.getElementById("target"));
|
|
|
|
await document.getElementById("container").animate({ transform: 'translate(0, 100px)' }, 1000).finished;
|
|
assert_equals(intersections, 1);
|
|
}, "An element that already intersects with the viewport does not trigger the observer callback when animating its transform.");
|
|
|
|
</script>
|