reset-state-after-scrolled-view-transition-ref.html (1107B)
1 <!DOCTYPE html> 2 <html class="reftest-wait"> 3 <head> 4 <title>Reference: Finishing a View Transition on a scrolled page should properly reset state</title> 5 <style> 6 html { 7 background: lightblue; 8 } 9 body { 10 background-color: lightgreen; 11 } 12 </style> 13 </head> 14 <body> 15 <p>Start</p> 16 <div style="height: 200vh"></div> 17 <p>End</p> 18 19 <script> 20 function scrollBy(y) { 21 return new Promise(resolve => { 22 addEventListener("scroll", () => { 23 requestAnimationFrame(() => { 24 requestAnimationFrame(resolve); 25 }); 26 }, { once: true, capture: true }); 27 document.documentElement.scrollBy({ 28 top: y, 29 behavior: "instant" 30 }); 31 }); 32 } 33 addEventListener("load", async () => { 34 await scrollBy(document.documentElement.scrollHeight); 35 document.documentElement.classList.remove("reftest-wait"); 36 }); 37 </script> 38 </body> 39 </html>