JQuery - Fancybox: Но я не хочу полосы прокрутки! - PullRequest
25 голосов
/ 15 февраля 2010

Я использую jQuery Fancybox для всплывающей регистрационной формы здесь

Я бы хотел, чтобы форма отображалась с размером 450 на 700 пикселей, но независимо от того, какой я установил высоту и ширину, я получаю полосы прокрутки:

<script type="text/javascript">
    $(document).ready(function() {
        $("a#regForm").fancybox({
            'titleShow'  : false,
            'autoscale' : true,
            'width'  : '450',
            'height'  : '700',
            'transitionIn'  : 'elastic',
            'transitionOut' : 'elastic'
            }); 
        });
    </script>

Должно быть, я что-то не так делаю, но не могу понять, что это. Я был бы признателен за полезную руку здесь. Спасибо.

Ответы [ 24 ]

0 голосов
/ 16 февраля 2015

Я сделал это, чтобы избавиться от переполнения (полоса прокрутки) ...

к концу файла jquery.fancybox .... js есть функции onStart, onCancel, onComplete и т. Д., И все они пусты ... так что просто вперёд и заполните фигурные скобки onStart с помощью " $ ('body'). css ('overflow', 'hidden') "и onClosed" $ ('body'). css ('overflow', 'visible') "... должно выглядеть так ...

onStart:function(){$('body').css('overflow','hidden')},
onClosed:function(){$('body').css('overflow','visible')},

мир

0 голосов
/ 27 сентября 2014

Редактировать строку 197 и 198 из jquery.fancybox.css:

.fancybox-lock .fancybox-overlay {
    overflow: auto;
    overflow-y: auto;
}
0 голосов
/ 12 апреля 2013

Вот еще одна мысль. У меня было

html {  overflow-y: scroll; }

в моем основном CSS, чтобы не допустить скачка по центру контента между страницами, для которых требовалась или не требовалась полоса прокрутки. Я пытался все вышеперечисленное, чтобы избавиться от полосы прокрутки во всплывающем окне, пока я не понял это. Как только я отключил его только для всплывающего окна, полоса прокрутки во всплывающем окне также исчезла. Поэтому убедитесь, что полоса прокрутки, которую вы видите, на самом деле исходит от iframe, а не от страницы внутри.

0 голосов
/ 30 мая 2013

Мои 2 цента, напишите

*{ margin:0; padding:0; }

в основной css целевой страницы, добавьте div содержимого с размером высоты всех ваших элементов, не трогайте .js, listo, saludos

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...