UNPKG

tty.css

Version:

Pure CSS simulation of text-mode web browsers

36 lines (25 loc) 682 B
// Ponyfill for scroll-snap-points behaviour let pageXOffset_acum = 0 let pageYOffset_acum = 0 let raf function snap() { raf = undefined // if() // { // pageXOffset_acum = 0 // pageYOffset_acum = 0 // return // } const pageXOffset = window.pageXOffset + pageXOffset_acum const pageYOffset = window.pageYOffset + pageYOffset_acum const snappedX = Math.round(pageXOffset/8)*8 const snappedY = Math.round(pageYOffset/16)*16 pageXOffset_acum = pageXOffset - snappedX pageYOffset_acum = pageYOffset - snappedY window.scroll(snappedX, snappedY) } document.addEventListener('scroll', function() { if(!raf) raf = requestAnimationFrame(snap) })