0

私は自分のサイトの 1 つに fancybox プラグインを使用していました。この問題が発生するまで、私は本当にそれを使用するのが大好きです. ファンシーボックスの中にアコーディオンを入れたい。問題は、ファンシーボックスの高さを大きくして、アコーディオンが折りたたまれているときにスクロールバーが表示されないようにしたいことです。

私の現在のコードについては、ここをクリックしてください

4

3 に答える 3

2

ファンシーボックスが開いたら、高さを更新する必要があります。コードを更新して追加afterShow

$(".fancybox").fancybox({
    openEffect : 'elastic',
    openSpeed  : 150,
    closeEffect : 'elastic',
    closeSpeed  : 150,
    autoDimensions: true,
    height: 'auto',
    afterShow: function(){
        $.fancybox.update()
    }
});

これが実際のデモです。http://jsfiddle.net/muthkum/wufGk/1/

于 2012-09-21T12:36:40.953 に答える
1

これを使って:

$.fancybox.update();

デモ: http: //jsfiddle.net/wufGk/2/

于 2012-09-21T12:36:20.530 に答える
0

以下の URL の height:'auto' の後に以下のコードを追加しました http://jsfiddle.net/sunnyjaysabuero90/wufGk/、動作します

    $(".fancybox").fancybox({
        openEffect : 'エラスティック',
        openSpeed : 150,
        closeEffect : 'エラスティック',
        closeSpeed : 150,
        autoDimensions: 真、
        高さ: '自動',

    beforeShow: 関数(){
       this.width = $('.fancybox-iframe').contents().find('html').width();
       this.height = $('.fancybox-iframe').contents().find('html').height();
      }
        fitToView: false
    });

    $('.accordionButton').click(関数() {
        $('.accordionButton').removeClass('accordionButton-open');
        $('.accordionContent').slideUp('高速');
        if($(this).next().is(':hidden') == true) {
        $(this).addClass('accordionButton-open');
        $(this).next().slideDown('fast');
        }
    });

于 2012-09-21T13:09:29.850 に答える