現在ララベル5.5で実装中です。
実装しているスライダーがpcのみの対応で、スマホにしたときも大きさが変わりません。
スマホにしたらスマホサイズになるようにするには下記の実装をどのように変更したらよろしいでしょうか?
今実装しているもは下記です。
html
<div class="row"> <div class="col-md-12"> <div id="carousel_top"> <div class="carousel"> <ul class="slides"> <li><a href="./"><img src="{{ asset('storage/img/img1.jpg') }}" width="800" height="400" alt="Image 4"></a></li> <li><a href="./"><img src="{{ asset('storage/img/img2.jpg') }}" width="800" height="400" alt="Image 4"></a></li> <li><a href="./"><img src="{{ asset('storage/img/img3.jpg') }}" width="800" height="400" alt="Image 4"></a></li> <li><a href="./"><img src="{{ asset('storage/img/img4.jpg') }}" width="800" height="400" alt="Image 4"></a></li> </ul> <a href="#" class="carousel-control carousel-control-prev1 inactive"><</a> <a href="#" class="carousel-control carousel-control-next1 inactive">></a> </div> </div> </div> </div>
main.js
$(document).ready(function() { //indexのスライダー //スライド1枚あたりの幅(px) var SMARTPHONE_WINDOW_WIDTH = 800; var slideWidth; var currentWindowWidth = window.innerWidth; if (currentWindowWidth > SMARTPHONE_WINDOW_WIDTH ) { // window幅が800より大きい場合、スライド1枚あたりの幅を800にする(あくまで例です) slideWidth = 800; } else { // window幅が800未満の場合、スライド1枚あたりの幅を400にする slideWidth = 400; } // 現在表示中のスライドが何番目か(0から数え始める) var currentSlide = 0; // スライドの全枚数 var numSlides; // index(0から始まる)番目のスライドを表示する関数 function showSlide(index) { // 1番目のスライドでは左矢印を非表示 if (index === 0) { $("#carousel_top .carousel-control-prev1").hide(); } else { $("#carousel_top .carousel-control-prev1").show(); } // 最後のスライドでは右矢印を非表示 if (index === numSlides - 1) { $("#carousel_top .carousel-control-next1").hide(); } else { $("#carousel_top .carousel-control-next1").show(); } // 実行中のアニメーションがあればキャンセルした後、 // leftを変化させるアニメーションを開始 $("#carousel_top .slides").stop().animate({ left: -slideWidth * currentSlide + "px" }, 600 ); } // スライドが全部で何枚あるか取得 numSlides = $("#carousel_top .slides > li").length; // 最初のスライドを表示 showSlide(currentSlide); // 左矢印がクリックされたら1つ前のスライドを表示 $("#carousel_top .carousel-control-prev1").click(function() { currentSlide--; showSlide(currentSlide); return false; }); // 右矢印がクリックされたら1つ後のスライドを表示 $("#carousel_top .carousel-control-next1").click(function() { currentSlide++; showSlide(currentSlide); return false; }); });
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。