0

bxSliderを再起動して、ウィンドウのサイズが変更されたときに寸法を再計算しdiv、新しい幅と高さに合わせることができるようにしたいと思います。

私は、jQueryでサイズ変更時にプラグインをどのようにリロードできるのか疑問に思いました。

そのシンプルな機能が欲しい

//Home slider function
function hSlider(){
    $('.hCarousel').bxSlider({
        displaySlideQty: 3
    });
}

$(window).resize(function(e){
    hSlider();
}).resize();

リロードされますresize()

これは可能ですか?

4

5 に答える 5

4

http://bxslider.com/optionsのAPIを見ると、これらの関数のいずれかを呼び出すことができるはずです。

destroyShow()アクティブなスライドショーを破棄します reloadShow()スライドショーを
再初期化します

//Home slider function
$('.hCarousel').bxSlider({
    displaySlideQty: 3
});


$(window).resize(function(e){
   $('.hCarousel').reloadShow();
});

テストされていないことに注意してくださいが、APIを読んでください

于 2012-09-17T20:22:46.333 に答える
1

サイズ変更機能にない問題を理解しているので、reinit bxSliderについて質問しますか?この答えを見てください:bxSliderをリセットする

reloadShow();
于 2012-09-17T20:22:15.420 に答える
0

ストレートjs​​からサイズ変更イベントで関数を呼び出すことができるはずです:

window.onresize = function(event) {     ... } 
于 2012-09-17T20:18:59.267 に答える
0

コードの残りの部分が正しいと仮定してdestroyShow()、スライダーを作成する前に追加しました...

function hSlider(){
    $('.hCarousel').destroyShow().bxSlider({
        displaySlideQty: 3
    });
}

$(window).resize(function(e){
    hSlider();
}).resize();

bxSliderドキュメント

于 2012-09-17T20:27:08.933 に答える
-1

私は同じ方法でそれを行いますが、underscore.jsを使用します。

$(window).resize(_.bind(this.resizeList, this));

私はあなたのエラーがここにあると思います:

$(window).resize(function(e){;  <----- REMOVE THIS ;
    hSlider();
}).resize();                     <----- And I think this is not necessary too

このような何かがそれを行う必要があります:

$(window).resize(function(e){
    hSlider();
});
于 2012-09-17T20:17:31.037 に答える