При переполнении страница смещается вверх: скрытое свойство css имеет значение <html>только в Firefox - PullRequest
2 голосов
/ 06 декабря 2011

Высота моей веб-страницы достаточно велика, у меня есть требование, например, когда у меня есть модальное диалоговое окно на странице, полоса прокрутки страницы должна быть отключена.Так как модальное диалоговое окно имеет полосу прокрутки, когда модальная диалоговая полоса прокрутки заканчивается, полоса прокрутки страницы будет активирована.Чтобы исправить это, я добавил этот код в метод модального диалогового окна JQuery.

   open: function () {
        $("html").css("overflow", "hidden");
        return false;
    },
    close: function () {
        $("html").css("overflow", "visible");
        return false;
    }

Теперь я нахожусь в нижней части страницы при открытии модального диалогового окна, страница смещена вверх только в браузере Firefox, потомуof overflow: к тегу добавлено скрытое свойство, из-за этого я не вижу открытого модального диалога, который открывается внизу страницы.

Но этот код работает нормально (страница не сместится вверх) как и ожидалось во всех других браузерах, ожидайте Firefox.

Может кто-нибудь предложить мне исправить любой другой способ отключить полосу прокрутки страницы или как остановить перемещение страницы вверх только в Firefox.

Спасибо Гопи

Ответы [ 2 ]

0 голосов
/ 06 декабря 2011

Трудно сказать, не видя страницы, но это может быть вызвано перекомпоновкой после прерывания набора overflow.Если вы добавляете сброс оплавления (например, document.body.offsetWidth) сразу после вызовов css(), это поможет?

0 голосов
/ 06 декабря 2011

Я бы лично прикрепил свойство css к вашему элементу, а не к одному, поскольку есть вероятность, что свойство наследуется Просто мысль.

...