This is really possible using fastclick.js . Lib removes the 300 ms delay delay on mobile devices and allows you to capture events during inertia / impulse scrolling.
After enabling fastclick and attaching it to the body element, my code to stop scrolling and jump to the beginning looks like this:
scrollElement.style.overflow = 'hidden'; scrollElement.scrollTop = 0; setTimeout(function() { scrollElement.style.overflow = ''; }, 10);
The trick is to set overflow: hidden , which stops the inertia / impulse scrolling. Please see My script for the full implementation of stopping scroll during inertia / impulse .
Patrick rudolph
source share