jcarousel liteを使用して、自分のサイトの 1 つにブランド ロゴの自動スクロール カルーセルを表示しています。次のJavaScriptを使用して、レスポンシブ(最大ディスプレイで最大6枚の画像)にしようとしました。カルーセルは、表示される画像の数を変更しなくても、元のコードを使用して正常に動作します。
<script>
function carouselLogic(){
if ($(window).width() > 959 ){
visible = 6;
changeCarousel(visible);
}
else if($(window).width() > 767){
visible = 4;
changeCarousel(visible);
}
else if($(window).width() > 599){
visible = 2;
changeCarousel(visible);
}
}
carouselLogic();
$(window).resize(function(){
carouselLogic();
});
/* original function for first page load
$(function() {
$(".logoCarousel").jCarouselLite({
auto: 2500,
speed: 1000,
visible: 6
});
});
*/
function changeCarousel(visible){
$(".logoCarousel").jCarouselLite({
auto: 2500,
speed: 1000,
visible: visible
});
}
</script>
画像は、左右に 20 ピクセルのマージンを持ってインラインで表示されます。
このコードは、表示されるロゴの数を変更して、レスポンシブの変更ごとにロゴがページに収まるようにすることになっています。
その結果、カルーセルの自動スクロールがすべて狂ってしまいます。あらゆる場所で前後に跳ね返り、デフォルトよりもはるかに高速です。
このコードを改善する方法について何か提案はありますか?