| <html> |
| |
| <head> |
| <style> |
| #gallery { |
| width: 315px; |
| height: 600px; |
| scroll-snap-type: y mandatory; |
| -webkit-overflow-scrolling: touch; |
| overflow-y: scroll; |
| position: absolute; |
| } |
| |
| .vertical { |
| width: 300px; |
| height: 300px; |
| scroll-snap-align: start; |
| position: absolute; |
| } |
| |
| #child00 { background-color: #DD0000; left: 0; top: 0px; } |
| #child01 { background-color: #FF6666; left: 0; top: 300px; } |
| #child02 { background-color: #00DD00; left: 0; top: 600px; } |
| #child03 { background-color: #66FF66; left: 0; top: 900px; } |
| #child04 { background-color: #0000DD; left: 0; top: 1200px; } |
| #child05 { background-color: #6666FF; left: 0; top: 1500px; } |
| </style> |
| <script src="../../resources/js-test.js"></script> |
| <script> |
| function setup() { |
| window.jsTestIsAsync = true; |
| var gallery = document.getElementById("gallery"); |
| var coordinateChildElements = document.getElementsByClassName("vertical"); |
| |
| function snapOffsets() { |
| return window.internals.scrollSnapOffsets(gallery); |
| } |
| |
| function dumpGalleryAndUpdateCoordinates() { |
| debug("Original snap offsets with `start` alignment: " + snapOffsets()); |
| for (var index = 0; index < coordinateChildElements.length; ++index) |
| coordinateChildElements[index].style.scrollSnapAlign = "center"; |
| |
| setTimeout(dumpGalleryAndFinishTest, 0); |
| } |
| |
| function dumpGalleryAndFinishTest() { |
| debug("Updated alignment to `center`: " + snapOffsets()); |
| finishJSTest(); |
| } |
| |
| if (window.testRunner) |
| setTimeout(dumpGalleryAndUpdateCoordinates, 0); |
| } |
| </script> |
| </head> |
| |
| <body onload="setup()"> |
| <div id="gallery"> |
| <div class="vertical" id="child00"></div> |
| <div class="vertical" id="child01"></div> |
| <div class="vertical" id="child02"></div> |
| <div class="vertical" id="child03"></div> |
| <div class="vertical" id="child04"></div> |
| <div class="vertical" id="child05"></div> |
| </div> |
| </body> |
| |
| </html> |