2016-10-27 5 views
0

私はスライダのインスタンスをいくつか持っており、すべて同じパラメータを渡す必要があります。javascriptで配列にパラメータを渡す

私はそのために配列が必要だと思っていますが、私はJSの初心者ですから、正しく行う方法がわかりません。

パラメータは次のように例を探します。

spaceBetween: 20, 
slidesPerView: 5, 
breakpoints: { 
    600: { 
    slidesPerView: 2 
    }, 
    991: { 
    slidesPerView: 3 
    }, 
    1200: { 
    slidesPerView: 4 
    } 
} 

とスライダーインスタンス:

var swiper1 = new Swiper('.swiper1', { 
    prevButton: '.b-prev-1', 
    nextButton: '.b-next-1', 

    //here I need to get the rest of the parameters 

}); 

ありがとうございました:)

+0

見.extend' $ 'で - それはあなたが'持つことができるので、あなたは、一緒にオブジェクトをマージすることができますするvar commonOpts = {spaceBetween:20 ...}、その後 'と' $ .extend({ }、commonOpts、swiper1Opts) ' – vlaz

答えて

0

をこんにちはあなたは

var swiper1 = new Swiper('.swiper1', [ 
 
    prevButton: '.b-prev-1', 
 
    nextButton: '.b-next-1', 
 
    //here I need to get the rest of the parameters 
 
]);
以下のように書くことができます

+0

動作するコードスニペットを使用する場合は、あなたの答えではおそらくコードフォーマットを使用するのに適している可能性があります。 –

+0

私は問題に直面しているので、私はそれを使用しました。問題は私がそれに直面しているためです。 ''適切にフォーマットされていないので、コードスニペットに追加しました –

+0

問題とは独立していれば、それを使うのは意味がありません。 –

0

function(arrayP){  
    for(var i = 0; i < arrayP.length; i++){ 
     alert(arrayP[i]); //no .value here 
    } 
} 

のリンクをお試しください: - あなたはjQueryの$.extend()を使用することができますPassing an array as parameter in JavaScript

0

var extraDetails = { 
    spaceBetween: 20, 
    slidesPerView: 5, 
    breakpoints: { 
     600: { 
     slidesPerView: 2 
     }, 
     991: { 
     slidesPerView: 3 
     }, 
     1200: { 
     slidesPerView: 4 
     } 
    } 
}; 

var swiper1 = new Swiper('.swiper1', $.extend({ 
     prevButton: '.b-prev-1', 
     nextButton: '.b-next-1' 
    }, 
    extraDetails 
)); 
0

ES5でこれを行うための最も雄弁な方法で作成することです各スライドの新しい設定オブジェクトですが、を使用して共通オブジェクトを基にします。私はあなたのDOM要素の上にあなたがループ可能性を想像し、それぞれのためにオンザフライで設定を作成する - より多くのコードを見てクールだろう

var commonConfig = { spaceBetween: 20, slidesPerView: 5, breakPoints: { ... } }; 

var swiper1 = $.extend(true, {}, commonConfig, { 
    prevButton: '.b-prev-1', 
    nextButton: '.b-next-1' 
}); 

var swiper2 = $.extend(true, {}, commonConfig, { 
    prevButton: '.b-prev-2', 
    nextButton: '.b-next-2' 
}); 

Object.assign()はVanillaJSが似ています)。以下のような何か:

$('.swiper').each(function(idx, el){ 
    $(this).swiper({ 
     spaceBetween: 20, 
     slidesPerView: 5, 
     breakPoints: { ... }, 
     prevButton: '.b-prev-'+(idx+1), 
     nextButton: '.b-next-'+(idx+1) 
    }); 
}); 
関連する問題