For latest versions of Chrome:
html,
body {
overscroll-behavior-y: contain;
}
Old solution:
Since mobile Chrome >= 56 event listeners are passive by default and passive event listeners can’t prevent defaults anymore.
See here
You have to use active event listeners instead like so:
document.addEventListener('touchstart', touchstartHandler, {passive: false});
document.addEventListener('touchmove', touchmoveHandler, {passive: false});