Files
grungnet/src/helpers/usePreventOverscroll.js
2020-05-21 16:46:50 +10:00

26 lines
602 B
JavaScript

import { useEffect } from "react";
function usePreventOverscroll(elementRef) {
useEffect(() => {
// Stop overscroll on chrome and safari
// also stop pinch to zoom on chrome
function preventOverscroll(event) {
event.preventDefault();
}
const element = elementRef.current;
if (element) {
element.addEventListener("wheel", preventOverscroll, {
passive: false,
});
}
return () => {
if (element) {
element.removeEventListener("wheel", preventOverscroll);
}
};
}, [elementRef]);
}
export default usePreventOverscroll;