| <!DOCTYPE html> |
| <title>Background change from opaque to transparent during smooth scroll</title> |
| <link rel=help href="https://drafts.csswg.org/cssom-view/#dictdef-scrolltooptions"> |
| <style> |
| #container { |
| width: 200px; |
| height: 200px; |
| overflow: scroll; |
| background: white; |
| } |
| #content { |
| width: 7500px; |
| height: 7500px; |
| } |
| </style> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script> |
| var t = async_test('background change during smooth scroll'); |
| |
| function startSmoothScroll() { |
| var scrollToOptions = {behavior: "smooth", top: 6000}; |
| container.scrollTo(scrollToOptions); |
| requestAnimationFrame(preventCompositedScrolling); |
| } |
| |
| function preventCompositedScrolling() { |
| container.style.background = "transparent"; |
| requestAnimationFrame(waitForSmoothScrollEnd); |
| } |
| |
| function waitForSmoothScrollEnd() { |
| if (container.scrollTop == 6000) { |
| t.done(); |
| } else { |
| window.requestAnimationFrame(waitForSmoothScrollEnd); |
| } |
| } |
| |
| onload = () => { |
| requestAnimationFrame(startSmoothScroll); |
| } |
| </script> |
| <div id="container"> |
| <div id="content">Content</div> |
| </div> |