В ipad pro я пытаюсь отключить прокрутку, если всплывающее окно открыто, и включить прокрутку назад, если всплывающее окно закрывается. Я нашел решение, которое работает отлично, но оно также блокирует прокрутку внутреннего элемента.
function preventDefault(e){
e.preventDefault();
}
function disableScroll() {
document.body.addEventListener('touchmove', preventDefault, { passive: false });
}
function enableScroll() {
document.body.removeEventListener('touchmove', preventDefault);
}
Здесь у меня есть элемент внутри всплывающего окна, который можно прокручивать и имеет имя класса window-content . Приведенное выше решение блокирует прокрутку для всей страницы, что означает, что оно также блокирует прокрутку для внутреннего содержимого всплывающего окна. Я попробовал приведенный ниже код, чтобы разрешить прокрутку внутри pop, но это не сработало.
function disableScroll() {
document.body.addEventListener('touchmove', preventDefault, { passive: false });
document.getElementsByClassName('window')[0].getElementsByClassName('window-content')[0].removeEventListener('touchmove', preventDefault);
}
Я хочу разрешить прокрутку внутри popup, и она должна отключаться только для тела. Спасибо.