fancybox-2 горизонтальная полоса прокрутки выключена

0

fancybox версия 2 по какой-либо причине показывает #fancybox-inner horizontal scrolling bar. Даже я изменил размер окна, на котором отображается панель прокрутки. Как я могу скрыть горизонтальную полосу прокрутки?

function display_dialog() {
        $.fancybox.open({
            href: '/ContactSubmission/',
            type: 'ajax',
            padding: 15,
            openEffect: 'fade',
            openSpeed: 'normal',
            closeEffect: 'elastic',
            closeSpeed: 'slow',
            autoSize: true,
            scrolling: 'auto',
            helpers: {
                title: {
                    type: 'float'
                },
                overlay: {
                    locked: true
                }
            },
            afterLoad: function(){ 
              $("#fancybox-frame").css({'overflow-x':'hidden'}); 

            } 
        });

    };

Я пробовал $("#fancybox-frame").css({'overflow-x':'hidden'}); все еще не работает.

  • 0
    У вас есть scrolling: 'auto' когда вы открываете окно. Вы пытались установить scrolling: 'hidden' ? Я не знаком с fancybox, но если он добавит это как встроенный стиль, он переопределит ваш afterLoad css. Вы также можете попробовать добавить «! Важное» в afterLoad css, в крайнем случае.
  • 0
    Вы установили scrolling: 'auto' но я думаю, что это должна быть scrolling: 'no'
Теги:
fancybox
fancybox-2

3 ответа

0

Иногда это происходит из-за размера фантазии. Например,

$.fancybox({
   href: '#reviseDiv',
   width: 800    //the width of fancy box is 800 pixel 
   });



 <div class="widget-content" style="display: none;width:800px;margin-left:30%;">
    <div id="reviseDiv" style="width:750px;margin-left:5%"> 
           //here width not exceed from width of fancy box

 </div>
 </div>
  • 0
    й! именно это моя проблема. Спасибо сэкономить мое время
0

Вот еще одна возможность:

$.fancybox.open({
    [...],
    scrolling: 'auto',
    afterLoad: function() { 
        this.wrap.find('.fancybox-inner').css({
            'overflow-y': 'auto',
            'overflow-x': 'hidden'
        });
    } 
});

Вы должны установить CSS-свойство overflow на .fancybox-inner -element и afterLoad, поскольку beforeLoad параметры из FancyBox-свойство scrolling будут установлены может переопределить ваш.

0

Я лично даже не отредактировал js для этого, я бы отредактировал CSS.

Пытаться

#fancybox-inner {
    overflow-x: hidden;
}

(хотя я думал, что fancybox-inner обычно является классом, а не идентификатором, поэтому, если это не работает, попробуйте вместо.fancybox-inner)

  • 1
    Я бы добавил !important чтобы fancybox (javascript) не мог переопределить это ...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню