@izumi_ (izumi iii)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

slickを使用しスライドを3つ連動させる

解決したいこと

ここに解決したい内容を記載してください。
3つのスライドを連動させたい

該当するソースコード

<div id="works_slider">
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide01.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide02.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img img01" style="background-image: url(../images/works/works_slide03.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide04.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide05.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide06.jpg);"></div>
                    </div>
                    <div class="slide_item">
                        <div class="img" style="background-image: url(../images/works/works_slide01.jpg);"></div>
                    </div>
                </div>
                <div id="works_slider01">
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide01.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide02.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide03.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide04.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide05.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide06.jpg);"></div></div>
                    <div class="slide_item"><div class="img" style="background-image: url(../images/works/works_slide01.jpg);"></div></div>
                </div>
                <div id="works_slider02">
                    <div class="slide_item">
                        <p>
                            統一感が出るように、建具・家具選びにもとてもこだわりが*:.。☆<br>
                            ダイニングテーブルやイスはどんなものを選ばれたのでしょう?<br>
                            きっとますます素敵なお部屋になっているだろうと、考えるだけでもワクワクします*:.。☆
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。<br>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。<br>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。<br>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。<br>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                    <div class="slide_item">
                        <p>
                            テキストが入ります。テキストが入ります。テキストが入ります。テキストが入ります。
                        </p>
                    </div>
                </div>
            </div>
$('#works_slider').slick({
        infinite: true,
        autoplay: false,
        autoplaySpeed: 3000,
        speed: 2000,
        slidesToShow: 1,
        dots: false,
        arrows: true,
        asNavFor: '#works_slider01',
        asNavFor: '#works_slider02',
    });
    $('#works_slider01').slick({
        infinite: true,
        autoplay: false,
        autoplaySpeed: 3000,
        speed: 2000,
        slidesToShow: 6,
        asNavFor: '#works_slider',
        asNavFor: '#works_slider02',
        responsive: [
            {
                breakpoint: 739,
                settings: {
                    slidesToShow: 3,
                }
            },  
        ]
    });
    $('#works_slider02').slick({
        infinite: true,
        autoplay: false,
        arrows: false,
        dots: false,
        autoplaySpeed: 3000,
        speed: 2000,
        slidesToShow: 1,
        asNavFor: '#works_slider',
        asNavFor: '#works_slider01',

    });

自分で試したこと

asNavForを使用し2つは連動ができたが3つは動かなかった。

0 likes

1Answer

var options = {
  asNavFor: '#works_slider01',
  asNavFor: '#works_slider02',
};
// 上のような書き方をしても
options.asNavFor = '#works_slider01';
options.asNavFor = '#works_slider02';
// とやっていることは同じなので
// options.asNavFor == '#works_slider02'
// 結果1つしか連動しない

slickの公式サイトにはclassでもidでも良いと書いている1ので、idではなくclassを指定すればいいと思います。

  1. コードを見るとjQueryが受け入れるセレクタなら何でもよさそう

2Like

Comments

  1. @izumi_

    Questioner

    全てのスライドに同じクラスを付与しasNavFor: '.works_slider',としたのですが、だめでした。。。
  2. 修正後のコードを載せていただいていいですか?
  3. @izumi_

    Questioner

    すみません。
    .の付け忘れでした。。

    クラスで指定し、無事に動きました。

Your answer might help someone💌