slickSetOption

更新日: 2019-12-19

指定したオプションの値を変更します。 refreshは常にbooleanを受け取り、UIを更新します。

引数

このメソッドは引数をいくつかの方法で渡すことができます。

単一オプションを変更
  • option: string
  • value: (オプションに併せて指定)
  • refresh: boolean

1つのoptionvalueに変更します。 refreshはオプションです。

$('.slider').slick('slickSetOption', option, value, refresh);

レスポンシブオプションを変更
  • responsive: "responsive"
  • responsiveOption: Array of objects
  • refresh: boolean

"responsive", [{ breakpoint: n, settings: {} }, ... ], refresh
responsiveオプションを変更/追加します。

$('.slider').slick('slickSetOption', "responsive", [
  {
    breakpoint: n,
    settings: {
      ...
    }
  }, ... 
], refresh);

複数オプションを変更
  • options: object
  • refresh: boolean

{ option: value, option: value, ... }, refresh
複数のoptionに対するvalueを指定します。

$('.slider').slick('slickSetOption', {
  option: value,
  option: value,
  ...
}, refresh);

指定例

初期化と同時に指定。

$(element).slick({
  dots: true,
  speed: 500
});

speedを変更。

$(element).slick('slickSetOption', 'speed', 5000, true);

破棄。

$(element).slick('unslick');

デモ

"自動再生"ボタンを押すと、自動再生で表示します。
"レスポンシブ"ボタンを押すと、レスポンシブ表示になります。

1

2

3

4

5

6

7

8

9

自動再生
レスポンシブ
JavaScript
$(document).ready(function(){
  $('.slider').slick({
    slidesToShow: 5,
  });
});

$('.js-auto').on('click', function() {
  $('.slider').slick('slickSetOption', {
    cssEase: 'ease',
    autoplay: true,
    autoplaySpeed: 1000,
    speed: 2500,
  }, true);
});

$('.js-responsive').on('click', function() {
  $('.slider').slick('slickSetOption', 'responsive',
    [{
      breakpoint: 640,
      settings: {
        slidesToShow: 5
      }
    }, {
      breakpoint: 480,
      settings: {
        arrows: false,
        slidesToShow: 3
      }
    }, {
      breakpoint: 320,
      settings: {
        arrows: false,
        slidesToShow: 1
      }
    }], true);
});
HTML
<div class="slider">
  <p>1</p>
  <p>2</p>
  <p>3</p>
  <p>4</p>
  <p>5</p>
  <p>6</p>
  <p>7</p>
  <p>8</p>
  <p>9</p>
</div>
<div class="buttons">
  <div class="button js-auto">自動再生</div>
  <div class="button js-responsive">レスポンシブ</div>
</div>
CSS
.slick-prev:before,
.slick-next:before {
  color: #000 !important;
}

.slider p {
  font-size: 2rem;
  font-weight: bold;
  line-height: 100px;
  color: #666;
  margin: 10px;
  text-align: center;
  background-color: #e0e0e0;
}

.buttons {
  display: flex;
  justify-content: center;
}

.buttons .button {
  margin: 8px;
  border: 1px solid #000;
  color: #000;
  padding: 8px;
  text-align: center;
  width: 8em;
  transition: all 300ms ease;
}

.buttons .button:hover {
  cursor: pointer;
  background-color: #000;
  color: #fff;
  transition: all 300ms ease;
}

© 2017 Ken Wheeler Licensed under the MIT license

このコンテンツはKen Wheeler(kenwheeler)によるslickドキュメントを翻訳/改変したものです。