🐕
JavaScriptでscrollの可/不可を切り替える
JavaScriptでscrollの可/不可を切り替える
Modalなどを実装したときに,Modalが開いているときにscrollをすると,後ろの画面がscrollしてしまうことってあるかなと思うのですが,それを解決する方法を書いておきます.
以下の関数を用意し,Modalを開くときにscrollDisable
を,閉じるときにscrollable
を実行すればOK
/* Scroll不可 */
export const scrollDisable = () => {
document.addEventListener('mousewheel', callback, { passive: false }); // PC
document.addEventListener('touchmove', callback, { passive: false }); // SP
};
/* Scroll可 */
export const scrollable = () => {
document.removeEventListener('mousewheel', callback, { capture: false }); // PC
document.removeEventListener('touchmove', callback, { capture: false }); // SP
};
const callback = (event: Event) => {
event.preventDefault();
};
Discussion