@PressOff

Как ограничить прокрутку скролла до определенной высоты?

доброго времени суток!

задача ограничить скролл после отрытия модального окна у тега "body".

overflow hidden не предлагать, уже реализовано и известно как делать.

собственно код:
var modal = document.getElementById("mymodal");
var btn = document.getElementById("btn_modal_window");
var close = document.getElementsByClassName("close_modal_window")[0];
var body = document.getElementById('body');
var blocks = document.getElementById("block_three_to_footer_block");

btn.onclick = function () {
    modal.style.display = "block";
//    body.style.overflow = "hidden";
    blocks.style.display = "none";
    
    $("html").scroll(function(){
        var n = "";
        var s = $("html").scrollTop(n);
        if( n > 100 ){
           $("html").scrollTop(100);
        }
    });
}

close.onclick = function () {
    modal.style.display = "none";
//    body.style.overflow = "auto";
    blocks.style.display = "block";
}

window.onclick = function(event) {
    if(event.target == modal) {
        modal.style.display = "none";
//        body.style.overflow = "auto";
        blocks.style.display = "block";
    }
}
  • Вопрос задан
  • 505 просмотров
Пригласить эксперта
Ответы на вопрос 1
SeaInside
@SeaInside
15 лет пилю все эти штуки
Здравствуйте.
overflow: hidden со своей задачей замечательно справляется, если выкинуть старые iУстройства.
Если озаботиться надо и ими, то втащите body-scroll-lock или просто в сорцах посмотрите, что они делают помимо overflow: hidden (немного всего), и адаптируйте к своему проекту.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы