mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Update web-platform-tests to revision 78f764c05c229883e87ad135c7153051a66e2851
This commit is contained in:
parent
55347aa39f
commit
bf84a079f9
1983 changed files with 58006 additions and 31437 deletions
|
@ -0,0 +1,67 @@
|
|||
<html class="reftest-wait">
|
||||
<title>Basic use of scroll timeline with WorkletAnimation</title>
|
||||
<link rel="help" href="https://drafts.css-houdini.org/css-animationworklet/">
|
||||
<meta name="assert" content="Should be able to use the scroll timeline to drive the worklet animation timing">
|
||||
<link rel="match" href="worklet-animation-with-scroll-timeline-ref.html">
|
||||
|
||||
<script src="/web-animations/testcommon.js"></script>
|
||||
<script src="/common/reftest-wait.js"></script>
|
||||
<script src="common.js"></script>
|
||||
|
||||
<style>
|
||||
#box {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
background-color: green;
|
||||
}
|
||||
|
||||
#covered {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
#scroller {
|
||||
overflow: auto;
|
||||
height: 100px;
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
#contents {
|
||||
height: 1000px;
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div id="box"></div>
|
||||
<div id="covered"></div>
|
||||
<div id="scroller">
|
||||
<div id="contents"></div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
registerPassthroughAnimator().then(() => {
|
||||
const box = document.getElementById('box');
|
||||
const effect = new KeyframeEffect(box,
|
||||
[
|
||||
{ transform: 'translateY(0)', opacity: 1},
|
||||
{ transform: 'translateY(200px)', opacity: 0}
|
||||
], {
|
||||
duration: 1000,
|
||||
}
|
||||
);
|
||||
|
||||
const scroller = document.getElementById('scroller');
|
||||
const timeline = new ScrollTimeline({ scrollSource: scroller, timeRange: 1000, orientation: 'block' });
|
||||
const animation = new WorkletAnimation('passthrough', effect, timeline);
|
||||
animation.play();
|
||||
|
||||
// Move the scroller to the halfway point.
|
||||
const maxScroll = scroller.scrollHeight - scroller.clientHeight;
|
||||
scroller.scrollTop = 0.5 * maxScroll;
|
||||
|
||||
waitForAsyncAnimationFrames(1).then(_ => {
|
||||
takeScreenshot();
|
||||
});
|
||||
});
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue