2011-12-09 21 views
0

私はjCarouselスクリプト(http://sorgalla.com/jcarousel/)を使用しています。カルーセルに含まれるアイテムの数に基づいて特定の設定を動的に設定する方法を知っている人がいますか?例えば、私はこのカルーセルで4つの以下の項目がある場合にどうしたいのですが:jCarouselの設定を動的に設定する

$().ready(function() { 
    $('#sixMR').jcarousel({ 
    animation: 'slow', 
    scroll: 1 
    }); 
}); 

をしかし、5つの以上の項目がある場合、私はこれを必要とするだろう:まあ

$().ready(function() { 
    $('#sixMR').jcarousel({ 
    animation: 'slow', 
    scroll: 1, 
    wrap: 'circular' 
    }); 
}); 
+0

**ちょうど参考です** ** jCarouselのラップサークルには最小限の問題があります(https://github.com/jsor/jcarousel/issues/search?q=circular)。ご使用のブラウザの[デモページ](http://sorgalla.com/projects/jcarousel/examples/static_circular.html)を参照してください。 ** **多くの**月の修正を待っていましたが、開発者はリリース日にコミットしません。 – Sparky

答えて

0

あなたは、init callabackでそれを行うことができるかもしれない:

$(whatever).jcarousel({ 
    "initCallback": function(c, state){ 
     if(c.list.length < 5){ 
     c.options = $.extend(c.options, { 
      animation: 'slow', 
      scroll: 1, 
      wrap: 'circular' 
     }); 
     } else { 
     c.options = $.extend(c.options, { 
      animation: 'slow', 
      scroll: 1 
     }); 
     } 
    } 
}); 

今私が原因いつ、どのようにオプションの値が使用されているのに動作することを確実に知るDPNT ... initは、実際には遅すぎるかもしれ後にそれらを修正します。その場合、直接プラグインする方法はありません(あなたが再度initをやり直したいのでなければ、無駄に見えます)。その場合、最も簡単なことは、ラッパーを作成してオプションを決定し、そこからカルーセルを作成することです。

+0

それはうまくいきませんでしたが、努力と正しい方向に私を指してくれてありがとう!私は実際にはうまくいけばそれが間違っているかどうかを見て、私に知らせる方法を思いついた。私はまだjQueryを学んでいます。できる限り多くのベストプラクティスに従っていることを確認したいのです。再度、感謝します! {$( '#sixMR')(長さ<5 $( '#1 sixMR李')。)もしjcarousel({ アニメーション: '遅い'、 スクロール:1 })。 }他{ $( '#sixMR')jcarousel({ アニメーション: '遅い'、 スクロール:1、 ラップ: '円形' })。 } –

+0

'$()レディ(関数(){ ($( '#1 sixMR李')場合は、長さ<5){ $( '#sixMR')jcarousel({ アニメーション:。。。 '遅いです'、 スクロール:1 }); }他{ $( '#sixMR')jcarousel({ アニメーション: '遅い'、 スクロール:1、 ラップ: '円形' }); } } ); ' –

関連する問題