<!-- Slider main container -->
<div class="swiper">
<!-- Additional required wrapper -->
<div class="swiper-wrapper">
<!-- Slides -->
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
<div class="swiper-slide">Slide 3</div>
...
</div>
<!-- If we need pagination -->
<div class="swiper-pagination"></div>
<!-- If we need navigation buttons -->
<div class="swiper-button-prev"></div>
<div class="swiper-button-next"></div>
<!-- If we need scrollbar -->
<div class="swiper-scrollbar"></div>
</div>
Swiper パッケージには、さまざまな CSS、Less、SCSS スタイルのセットが含まれています。
バンドルバージョン用の CSS スタイル
swiper-bundle.css - すべてのモジュールスタイル(ナビゲーション、ページネーションなど)を含むすべての Swiper スタイルswiper-bundle.min.css - 前述と同じですが、ミニファイされていますバンドルバージョン用の CSS スタイル (パッケージインポート)
swiper/css - すべてのモジュールスタイル(ナビゲーション、ページネーションなど)を含むすべての Swiper スタイルswiper/css/bundle - 前述と同じですが、ミニファイされていますコアバージョンとモジュール用の CSS スタイル(パッケージインポート)
swiper/css - コア Swiper スタイルのみswiper/css/a11y - A11y モジュールに必要なスタイルswiper/css/autoplay - Autoplay モジュールに必要なスタイルswiper/css/controller - Controller モジュールに必要なスタイルswiper/css/effect-cards - Cards Effect モジュールに必要なスタイルswiper/css/effect-coverflow - Coverflow Effect モジュールに必要なスタイルswiper/css/effect-creative - Creative Effect モジュールに必要なスタイルswiper/css/effect-cube - Cube Effect モジュールに必要なスタイルswiper/css/effect-fade - Fade Effect モジュールに必要なスタイルswiper/css/effect-flip - Flip Effect モジュールに必要なスタイルswiper/css/free-mode - Free Mode モジュールに必要なスタイルswiper/css/grid - Grid モジュールに必要なスタイルswiper/css/hash-navigation - Hash Navigation モジュールに必要なスタイルswiper/css/history - History モジュールに必要なスタイルswiper/css/keyboard - Keyboard モジュールに必要なスタイルswiper/css/manipulation - Manipulation モジュールに必要なスタイルswiper/css/mousewheel - Mousewheel モジュールに必要なスタイルswiper/css/navigation - Navigation モジュールに必要なスタイルswiper/css/pagination - Pagination モジュールに必要なスタイルswiper/css/parallax - Parallax モジュールに必要なスタイルswiper/css/scrollbar - Scrollbar モジュールに必要なスタイルswiper/css/thumbs - Thumbs モジュールに必要なスタイルswiper/css/virtual - Virtual モジュールに必要なスタイルswiper/css/zoom - Zoom モジュールに必要なスタイルLess スタイルは、コアバージョンとモジュール用の個別のスタイルです(パッケージインポート)
swiper/less - コア Swiper スタイルのみswiper/less/bundle - すべてのモジュールスタイル(ナビゲーション、ページネーションなど)を含むすべての Swiper スタイルswiper/less/a11y - A11y モジュールに必要なスタイルswiper/less/autoplay - Autoplay モジュールに必要なスタイルswiper/less/controller - Controller モジュールに必要なスタイルswiper/less/effect-cards - Cards Effect モジュールに必要なスタイルswiper/less/effect-coverflow - Coverflow Effect モジュールに必要なスタイルswiper/less/effect-creative - Creative Effect モジュールに必要なスタイルswiper/less/effect-cube - Cube Effect モジュールに必要なスタイルswiper/less/effect-fade - Fade Effect モジュールに必要なスタイルswiper/less/effect-flip - Flip Effect モジュールに必要なスタイルswiper/less/free-mode - Free Mode モジュールに必要なスタイルswiper/less/grid - Grid モジュールに必要なスタイルswiper/less/hash-navigation - Hash Navigation モジュールに必要なスタイルswiper/less/history - History モジュールに必要なスタイルswiper/less/keyboard - Keyboard モジュールに必要なスタイルswiper/less/manipulation - Manipulation モジュールに必要なスタイルswiper/less/mousewheel - Mousewheel モジュールに必要なスタイルswiper/less/navigation - Navigation モジュールに必要なスタイルswiper/less/pagination - Pagination モジュールに必要なスタイルswiper/less/parallax - Parallax モジュールに必要なスタイルswiper/less/scrollbar - Scrollbar モジュールに必要なスタイルswiper/less/thumbs - Thumbs モジュールに必要なスタイルswiper/less/virtual - Virtual モジュールに必要なスタイルswiper/less/zoom - Zoom モジュールに必要なスタイルSCSS スタイルも、コアバージョンとモジュール用の個別のスタイルです(パッケージインポート)
swiper/scss - コア Swiper スタイルのみswiper/scss/bundle - すべてのモジュールスタイル(ナビゲーション、ページネーションなど)を含むすべての Swiper スタイルswiper/scss/a11y - A11y モジュールに必要なスタイルswiper/scss/autoplay - Autoplay モジュールに必要なスタイルswiper/scss/controller - Controller モジュールに必要なスタイルswiper/scss/effect-cards - Cards Effect モジュールに必要なスタイルswiper/scss/effect-coverflow - Coverflow Effect モジュールに必要なスタイルswiper/scss/effect-creative - Creative Effect モジュールに必要なスタイルswiper/scss/effect-cube - Cube Effect モジュールに必要なスタイルswiper/scss/effect-fade - Fade Effect モジュールに必要なスタイルswiper/scss/effect-flip - Flip Effect モジュールに必要なスタイルswiper/scss/free-mode - Free Mode モジュールに必要なスタイルswiper/scss/grid - Grid モジュールに必要なスタイルswiper/scss/hash-navigation - Hash Navigation モジュールに必要なスタイルswiper/scss/history - History モジュールに必要なスタイルswiper/scss/keyboard - Keyboard モジュールに必要なスタイルswiper/scss/manipulation - Manipulation モジュールに必要なスタイルswiper/scss/mousewheel - Mousewheel モジュールに必要なスタイルswiper/scss/navigation - Navigation モジュールに必要なスタイルswiper/scss/pagination - Pagination モジュールに必要なスタイルswiper/scss/parallax - Parallax モジュールに必要なスタイルswiper/scss/scrollbar - Scrollbar モジュールに必要なスタイルswiper/scss/thumbs - Thumbs モジュールに必要なスタイルswiper/scss/virtual - Virtual モジュールに必要なスタイルswiper/scss/zoom - Zoom モジュールに必要なスタイルSwiper の HTML が用意できたら、次の関数を使用して初期化する必要があります。
new Swiper(swiperContainer, parameters) - オプション付きで swiper を初期化
例
const swiper = new Swiper('.swiper', {
speed: 400,
spaceBetween: 100,
});
Swiper を初期化すると、その HTMLElement で Swiper のインスタンスにアクセスできます。これは、Swiper の HTML コンテナ要素の swiper プロパティです。
const swiper = document.querySelector('.swiper').swiper;
// Now you can use all slider methods like
swiper.slideNext();
利用可能なすべてのパラメータのリストを見てみましょう
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| a11y | 任意 | a11y パラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| allowSlideNext | ブール値 | true | 次のスライド方向 (右または下) へのスワイプを無効にするには |
| allowSlidePrev | ブール値 | true | 前のスライド方向 (左または上) へのスワイプを無効にするには |
| allowTouchMove | ブール値 | true |
|
| autoHeight | ブール値 | false |
|
| autoplay | 任意 | 自動再生パラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| breakpoints | オブジェクト | 異なるレスポンシブブレークポイント(画面サイズ)に対して異なるパラメータを設定できます。すべてのパラメータがブレークポイントで変更できるわけではなく、
| |
| breakpointsBase | 'container' | 'window' | 'window' | ブレークポイントのベース (ベータ版)。 |
| cardsEffect | 任意 | Cards-effect パラメータを持つオブジェクト | |
| centerInsufficientSlides | ブール値 | false | 有効にすると、スライドの量が |
| centeredSlides | ブール値 | false |
|
| centeredSlidesBounds | ブール値 | false |
|
| containerModifierClass | 文字列 | 'swiper-' | さまざまなパラメータに応じて swiper コンテナに追加できるモディファイア CSS クラスの先頭 |
| controller | 任意 | コントローラパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| coverflowEffect | 任意 | Coverflow-effect パラメータを持つオブジェクト。 | |
| createElements | ブール値 | false | 有効にすると、Swiper は自動的にスライドを swiper-wrapper 要素でラップし、ナビゲーション、ページネーション、スクロールバーに必要な要素を作成します(それぞれのパラメータオブジェクトまたはブール値 |
| creativeEffect | 任意 | Creative-effect パラメータを持つオブジェクト | |
| cssMode | ブール値 | false | 有効にすると、最新の CSS Scroll Snap API が使用されます。Swiper のすべての機能がサポートされているわけではありませんが、シンプルな構成ではパフォーマンスが大幅に向上する可能性があります。 有効にした場合にサポートされない機能は次のとおりです
他のエフェクト、特に3Dエフェクトと組み合わせて使用する場合は、スライドのコンテンツを |
| cubeEffect | 任意 | キューブエフェクトのパラメータを持つオブジェクト | |
| direction | 'horizontal' | 'vertical' | 'horizontal' |
|
| edgeSwipeDetection | 文字列 | ブール値 | false | アプリでのスワイプバック操作のためにSwiperイベントを解放するように有効にします。 |
| edgeSwipeThreshold | 数値 | 20 | アプリでスワイプバック操作のためにタッチイベントを解放する、画面の左端からの領域(ピクセル単位) |
| effect | 文字列 | 'slide' | トランジションエフェクト。 |
| enabled | ブール値 | true | Swiperが最初に有効になっているかどうか。Swiperが無効になっている場合、すべてのナビゲーション要素が非表示になり、イベントやインタラクションに応答しません。 |
| eventsPrefix | 文字列 | `swiper` | Swiper要素(Webコンポーネント)によって発行されるすべてのDOMイベントのイベント名プレフィックス |
| fadeEffect | 任意 | フェードエフェクトのパラメータを持つオブジェクト | |
| flipEffect | 任意 | フリップエフェクトのパラメータを持つオブジェクト | |
| focusableElements | 文字列 | 'input, select, option, textarea, button, video, label' | フォーカス可能な要素のCSSセレクター。これらの要素が「フォーカス」されている場合、スワイプは無効になります。 |
| followFinger | ブール値 | true | 無効にすると、スライダーは指を離したときにのみアニメーション化され、指で押さえている間は移動しません。 |
| freeMode | 任意 | フリーモード機能を有効にします。フリーモードのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| grabCursor | ブール値 | false | このオプションは、デスクトップでの使いやすさを少し向上させる可能性があります。 |
| grid | 任意 | 「複数行」スライダーを有効にするためのグリッドパラメータを持つオブジェクト。 | |
| hashNavigation | 任意 | スライドのハッシュURLナビゲーションを有効にします。ハッシュナビゲーションのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| height | null | 数値 | null | Swiperの高さ(ピクセル単位)。このパラメータを使用すると、Swiperの高さを強制できます。Swiperを非表示の状態で初期化する場合や、正しいSwiperの初期化のためにSSRおよびテスト環境でのみ役立ちます。
|
| history | 任意 | すべてのスライドが独自のURLを持つ履歴プッシュ状態を有効にします。このパラメータでは、 履歴ナビゲーションのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値
| |
| init | ブール値 | true | インスタンスを作成するときにSwiperを自動的に初期化するかどうか。無効になっている場合は、 |
| initialSlide | 数値 | 0 | 初期スライドのインデックス番号。 |
| injectStyles | string[] | シャドウDOMにテキストスタイルを挿入します。Swiper Elementでのみ使用します | |
| injectStylesUrls | string[] | シャドウDOMにスタイル | |
| keyboard | 任意 | キーボードを使用したスライドのナビゲーションを有効にします。キーボードのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| lazyPreloadPrevNext | 数値 | 0 | プリロードする次と前のスライドの数。遅延読み込みを使用している場合にのみ適用されます。 |
| lazyPreloaderClass | 文字列 | 'swiper-lazy-preloader' | 遅延プリローダーのCSSクラス名 |
| longSwipes | ブール値 | true | 長いスワイプを無効にする場合は |
| longSwipesMs | 数値 | 300 | 長いスワイプ中に次/前のスライドへのスワイプをトリガーするための最小時間(ミリ秒単位) |
| longSwipesRatio | 数値 | 0.5 | 長いスワイプ中に次/前のスライドへのスワイプをトリガーする比率 |
| loop | ブール値 | false | 連続ループモードを有効にする場合は ループモードの仕組み(スライドが再配置される)の性質上、スライドの合計数は次の値以上である必要があります
|
| loopAddBlankSlides | ブール値 | true | グリッドまたは |
| loopAdditionalSlides | 数値 | 0 | ループするスライドの量を増やすことができます |
| loopPreventsSliding | ブール値 | true | 有効にすると、スライダーがループモードでアニメーション化している間、slideNext/Prevは何も行いません。 |
| maxBackfaceHiddenSlides | 数値 | 10 | スライドの合計数がここで指定した値よりも少ない場合、Swiperはスライド要素で
|
| modules | any[] | Swiperモジュールの配列 | |
| mousewheel | 任意 | マウスホイールを使用したスライドのナビゲーションを有効にします。マウスホイールのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| navigation | 任意 | ナビゲーションパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| nested | ブール値 | false | タッチイベントの正しいインターセプトのために、Swiperで |
| noSwiping | ブール値 | true |
|
| noSwipingClass | 文字列 | 'swiper-no-swiping' |
|
| noSwipingSelector | 文字列 |
| |
| normalizeSlideIndex | ブール値 | true | スライドインデックスを正規化します。 |
| observeParents | ブール値 | false | Swiperの親要素のミューテーションも監視する必要がある場合は |
| observeSlideChildren | ブール値 | false | Swiperのスライド子要素のミューテーションも監視する必要がある場合は |
| observer | ブール値 | false | Swiperとその要素でMutation Observerを有効にする場合は |
| on | オブジェクト | イベントハンドラーを登録します | |
| onAny | function(handler) | すべてのイベントで発生するイベントリスナーを追加します | |
| oneWayMovement | ブール値 | false | 有効にすると、スワイプ方向に関係なく、スライドを前方(一方向)にのみスワイプします。 |
| pagination | 任意 | ページネーションのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| parallax | 任意 | 視差効果のパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| passiveListeners | ブール値 | true | モバイルデバイスでのスクロールパフォーマンスを向上させるために、可能な場合はデフォルトでパッシブイベントリスナーが使用されます。ただし、 |
| preventClicks | ブール値 | true | スワイプ中のリンクでの意図しない不要なクリックを防ぐ場合は、 |
| preventClicksPropagation | ブール値 | true | スワイプ中のリンクでのクリックイベントの伝播を停止する場合は、 |
| preventInteractionOnTransition | ブール値 | false | 有効にすると、トランジション中にスワイプまたはナビゲーション/ページネーションボタンによるスライドの変更を許可しません。 |
| resistance | ブール値 | true | 抵抗境界を無効にする場合は、 |
| resistanceRatio | 数値 | 0.85 | このオプションを使用すると、抵抗比率を制御できます |
| resizeObserver | ブール値 | true | 有効にすると、コンテナのサイズ変更を検出するために(ウィンドウのサイズ変更を監視する代わりに)、スワイパーコンテナでResizeObserver(ブラウザでサポートされている場合)を使用します。 |
| rewind | ブール値 | false | 「巻き戻し」モードを有効にする場合は
|
| roundLengths | ブール値 | false | 通常解像度の画面で(そのような場合)テキストがぼやけないように、スライドの幅と高さの値を丸める場合は |
| runCallbacksOnInit | ブール値 | true | スワイパーの初期化時にトランジション/スライド変更/開始/終了イベントを発行します。このようなイベントは、初期スライドが0でない場合、またはループモードを使用する場合に初期化時に発行されます。 |
| scrollbar | 任意 | スクロールバーのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| setWrapperSize | ブール値 | false | このオプションを有効にすると、プラグインはすべてのスライドの合計サイズに等しい幅/高さをスワイパーラッパーに設定します。主に、flexboxレイアウトを適切にサポートしていないブラウザの互換性フォールバックオプションとして使用する必要があります。 |
| shortSwipes | ブール値 | true | 短いスワイプを無効にする場合は、 |
| simulateTouch | ブール値 | true |
|
| slideActiveClass | 文字列 | 'swiper-slide-active' | 現在アクティブなスライドのCSSクラス名
|
| slideBlankClass | 文字列 | 'swiper-slide-blank' | ループモードによって追加された空白のスライドのCSSクラス名(
|
| slideClass | 文字列 | 'swiper-slide' | スライドのCSSクラス名
|
| slideFullyVisibleClass | 文字列 | 'swiper-slide-fully-visible' | 完全に(スライド全体がビューポート内にある場合)表示されているスライドのCSSクラス名
|
| slideNextClass | 文字列 | 'swiper-slide-next' | 現在アクティブなスライドのすぐ右にあるスライドのCSSクラス名
|
| slidePrevClass | 文字列 | 'swiper-slide-prev' | 現在アクティブなスライドのすぐ左にあるスライドのCSSクラス名
|
| slideToClickedSlide | ブール値 | false |
|
| slideVisibleClass | 文字列 | 'swiper-slide-visible' | 現在/部分的に表示されているスライドのCSSクラス名
|
| slidesOffsetAfter | 数値 | 0 | コンテナの末尾(すべてのスライドの後)に追加のスライドオフセット(ピクセル単位)を追加します。 |
| slidesOffsetBefore | 数値 | 0 | コンテナの先頭(すべてのスライドの前)に追加のスライドオフセットをpx単位で追加します。 |
| slidesPerGroup | 数値 | 1 | グループスライドを定義および有効にするスライド数を設定します。slidesPerView > 1 と組み合わせて使用すると便利です。 |
| slidesPerGroupAuto | ブール値 | false | このパラメーターは、 |
| slidesPerGroupSkip | 数値 | 0 | このパラメータは次のように動作します。
|
| slidesPerView | 数値 | 'auto' | 1 | 1つのビューあたりのスライド数(スライダーのコンテナ上で同時に表示されるスライド数)。
|
| spaceBetween | 文字列 | 数値 | 0 | スライド間の距離(px単位)。
|
| speed | 数値 | 300 | スライド間の遷移時間(ミリ秒単位) |
| swipeHandler | 任意 | null | スワイプの唯一の利用可能なハンドラーとして機能する、ページネーションを含むコンテナのCSSセレクターまたはHTML要素の文字列。 |
| swiperElementNodeName | 文字列 | 'SWIPER-CONTAINER' | スワイパー要素のノード名。Webコンポーネントのレンダリングを検出するために使用されます。 |
| threshold | 数値 | 5 | しきい値(px単位)。「タッチ距離」がこの値より低い場合、スワイパーは移動しません。 |
| thumbs | 任意 | サムネイルコンポーネントのパラメーターを持つオブジェクト。 | |
| touchAngle | 数値 | 45 | タッチ移動をトリガーするための許容角度(度単位)。 |
| touchEventsTarget | 'container' | 'wrapper' | 'wrapper' | タッチイベントをリッスンするターゲット要素。 |
| touchMoveStopPropagation | ブール値 | false | 有効にすると、「touchmove」の伝播が停止します。 |
| touchRatio | 数値 | 1 | タッチレシオ。 |
| touchReleaseOnEdges | ブール値 | false | スライダーのエッジ位置(先頭、末尾)でタッチイベントを解放して、ページのさらなるスクロールを許可できるようにします。この機能は、「タッチ」イベント(およびポインターイベントではない)でのみ機能するため、iOS / Androidデバイスでは機能しますが、ポインターイベントを使用するWindowsデバイスでは機能しません。また、 |
| touchStartForcePreventDefault | ブール値 | false |
|
| touchStartPreventDefault | ブール値 | true | 無効にすると、 |
| uniqueNavElements | ブール値 | true | 有効(デフォルト)で、ナビゲーション要素のパラメータが文字列( |
| updateOnWindowResize | ブール値 | true | Swiperは、ウィンドウサイズ変更(orientationchange)時にスライドの位置を再計算します。 |
| url | null | 文字列 | null | サーバー側でレンダリングされ、履歴が有効になっている場合に、アクティブなスライドを検出するために必要です。 |
| userAgent | null | 文字列 | null | ユーザーエージェント文字列。サーバー側でレンダリングされる場合に、ブラウザ/デバイスの検出に必要です。 |
| virtual | 任意 | 仮想スライド機能を有効にします。仮想スライドのパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 | |
| virtualTranslate | ブール値 | false | このオプションを有効にすると、スワイパーは通常どおり動作しますが、移動せず、ラッパーの実際のtranslate値は設定されません。カスタムスライド遷移を作成する必要がある場合に便利です。 |
| watchOverflow | ブール値 | true | 有効にすると、スライドが足りないためにスライドできない場合、Swiperは無効になり、ナビゲーションボタンが非表示になります。 |
| watchSlidesProgress | ブール値 | false | この機能を有効にすると、各スライドの進行状況と可視性が計算されます(ビューポート内のスライドには追加の可視クラスが付きます)。 |
| width | null | 数値 | null | Swiperの幅(px単位)。このパラメータを使用すると、Swiperの幅を強制できます。Swiperが非表示の場合や、SSR環境およびテスト環境で正しいSwiperの初期化のために、初期化する場合にのみ便利です。
|
| wrapperClass | 文字列 | 'swiper-wrapper' | スライドのラッパーのCSSクラス名。
|
| zoom | 任意 | ズーム機能を有効にします。ズームパラメータを持つオブジェクト、またはデフォルト設定で有効にする場合はブール値 |
スライダーを初期化すると、ヘルプフルなメソッドとプロパティを備えた初期化されたインスタンスが変数(上記の例の swiper 変数など)にあります。
| プロパティ | ||
|---|---|---|
| swiper.a11y | 任意 | |
| swiper.activeIndex | 数値 | 現在アクティブなスライドのインデックス番号。
|
| swiper.allowSlideNext | ブール値 | このプロパティに |
| swiper.allowSlidePrev | ブール値 | このプロパティに |
| swiper.allowTouchMove | ブール値 | このプロパティに |
| swiper.animating | ブール値 | スワイパーが遷移中の場合は |
| swiper.autoplay | 任意 | |
| swiper.cardsEffect | 任意 | |
| swiper.clickedIndex | 数値 | 最後にクリックされたスライドのインデックス番号。 |
| swiper.clickedSlide | HTMLElement | 最後にクリックされたスライドへのリンク(HTMLElement)。 |
| swiper.controller | 任意 | |
| swiper.coverflowEffect | 任意 | |
| swiper.creativeEffect | 任意 | |
| swiper.cubeEffect | 任意 | |
| swiper.defaults | 任意 | Swiperのデフォルトオプション。 |
| swiper.el | HTMLElement | スライダーコンテナのHTML要素。 |
| swiper.extendedDefaults | 任意 | グローバルなSwiper拡張オプションを持つオブジェクト。 |
| swiper.fadeEffect | 任意 | |
| swiper.flipEffect | 任意 | |
| swiper.freeMode | 任意 | |
| swiper.hashNavigation | 任意 | |
| swiper.height | 数値 | コンテナの高さ。 |
| swiper.history | 任意 | |
| swiper.isBeginning | ブール値 | スライダーが最も「左」/「上」の位置にある場合は |
| swiper.isEnd | ブール値 | スライダーが最も「右」/「下」の位置にある場合は |
| swiper.isLocked | ブール値 | スライドが( |
| swiper.keyboard | 任意 | |
| swiper.mousewheel | 任意 | |
| swiper.navigation | 任意 | |
| swiper.originalParams | 任意 | 元の初期化パラメータを持つオブジェクト。 |
| swiper.pagination | 任意 | |
| swiper.parallax | 任意 | |
| swiper.params | 任意 | 渡された初期化パラメータを持つオブジェクト。 |
| swiper.previousIndex | 数値 | 以前アクティブだったスライドのインデックス番号。 |
| swiper.progress | 数値 | ラッパートランスレートの現在の進行状況(0から1)。 |
| swiper.realIndex | 数値 | ループモードで再配置されたスライドを考慮した、現在アクティブなスライドのインデックス番号。 |
| swiper.scrollbar | 任意 | |
| swiper.slides | HTMLElement[] | スライドのHTML要素の配列。特定のHTML要素を取得するには、 |
| swiper.snapGrid | number[] | スライドのスナップグリッド。 |
| swiper.snapIndex | 数値 |
|
| swiper.swipeDirection | 'prev' | 'next' | スライドの方向。 |
| swiper.thumbs | 任意 | |
| swiper.touches | オブジェクト | 次のタッチイベントプロパティを持つオブジェクト。
|
| swiper.translate | 数値 | ラッパートランスレートの現在の値。 |
| swiper.virtual | 任意 | |
| swiper.width | 数値 | コンテナの幅。 |
| swiper.wrapperEl | HTMLElement | ラッパーHTML要素。 |
| swiper.zoom | 任意 | |
| メソッド | ||
| swiper.attachEvents() | すべてのイベントリスナーを再度アタッチします。 | |
| swiper.changeDirection(direction, needUpdate) | スライダーの方向を水平から垂直、またはその逆に変更します。
| |
| swiper.changeLanguageDirection(direction) | スライダーの言語を変更します。
| |
| swiper.destroy(deleteInstance, cleanStyles) | スライダーインスタンスを破棄し、すべてのイベントリスナーをデタッチします。
| |
| swiper.detachEvents() | すべてのイベントリスナーをデタッチします。 | |
| swiper.disable() | Swiperを無効にします(有効になっている場合)。Swiperが無効になっている場合、すべてのナビゲーション要素が非表示になり、イベントやインタラクションに応答しなくなります。 | |
| swiper.emit(event, args) | インスタンスでイベントを発生させます。 | |
| swiper.enable() | Swiperを有効にします(無効になっている場合)。 | |
| swiper.extendDefaults(options) | グローバルなSwiperのデフォルトを拡張します。 | |
| swiper.getTranslate() | swiperラッパーのcss3 transform translateの現在の値を取得します。 | |
| swiper.init(el) | スライダーを初期化します。 | |
| swiper.off(event, handler) | イベントハンドラーを削除します。 | |
| swiper.offAny(handler) | すべてのイベントで発生するイベントリスナーを削除します。 | |
| swiper.on(event, handler) | イベントハンドラーを追加します。 | |
| swiper.onAny(handler) | すべてのイベントで発生するイベントリスナーを追加します | |
| swiper.once(event, handler) | 発生後に削除されるイベントハンドラーを追加します。 | |
| swiper.setGrabCursor() | グラブカーソルを設定します。 | |
| swiper.setProgress(progress, speed) | Swiperトランスレートの進行状況(0から1)を設定します。0は最初のスライドの初期位置(オフセット)、1は最後のスライドの最大位置(オフセット)です。
| |
| swiper.setTranslate(translate) | swiperラッパーにカスタムcss3 transformのトランスレート値を設定します。 | |
| swiper.slideNext(speed, runCallbacks) | 次のスライドへの遷移を実行します。
| |
| swiper.slidePrev(speed, runCallbacks) | 前のスライドへの遷移を実行します。
| |
| swiper.slideReset(speed, runCallbacks) | 「speed」パラメータと等しい時間で、スワイパーの位置を現在アクティブなスライドにリセットします。
| |
| swiper.slideTo(index, speed, runCallbacks) | 「speed」パラメータと等しい時間で、「index」パラメータと等しいインデックス番号のスライドへの遷移を実行します。
| |
| swiper.slideToClosest(speed, runCallbacks) | 「speed」パラメータと等しい時間で、スワイパーの位置を最も近いスライド/スナップポイントにリセットします。
| |
| swiper.slideToLoop(index, speed, runCallbacks) | ループが有効な場合に使用する際の .slideTo と同じ動作をします。つまり、このメソッドは渡されたインデックスに一致する realIndex を持つスライドにスライドします。
| |
| swiper.slidesPerViewDynamic() | スライドごとの表示枚数を動的に計算して取得します。slidesPerView が | |
| swiper.translateTo(translate, speed, runCallbacks, translateBounds) | swiperラッパーのカスタムCSS3 transformのtranslate値をアニメーションさせます。
| |
| swiper.unsetGrabCursor() | グラブカーソルを解除します。 | |
| swiper.update() | スライドを手動で追加/削除した後、または非表示/表示した後、あるいはSwiperでカスタムDOMを変更した後に呼び出す必要があります。このメソッドには、個別に使用できる次のメソッドのサブコールも含まれています。 | |
| swiper.updateAutoHeight(speed) | swiperに、'speed'パラメータに等しい期間、高さを更新するように強制します(autoHeightが有効な場合)。
| |
| swiper.updateProgress() | swiperの進捗状況を再計算します。 | |
| swiper.updateSize() | swiperコンテナのサイズを再計算します。 | |
| swiper.updateSlides() | スライドの数とそのオフセットを再計算します。JavaScriptでスライドを追加/削除した後に役立ちます。 | |
| swiper.updateSlidesClasses() | スライドと箇条書きのアクティブ/前/次のクラスを更新します。 | |
| swiper.use(modules) | 実行時にSwiperにモジュールをインストールします。 | |
Swiperには、リッスンできる便利なイベントが多数用意されています。イベントは次の2つの方法で割り当てることができます。
swiper初期化時にonパラメータを使用する。
const swiper = new Swiper('.swiper', {
// ...
on: {
init: function () {
console.log('swiper initialized');
},
},
});
swiper初期化後にonメソッドを使用する。
const swiper = new Swiper('.swiper', {
// ...
});
swiper.on('slideChange', function () {
console.log('slide changed');
});
thisキーワードは、常にSwiperインスタンスを指すことに注意してください。| 名前 | 引数 | 説明 |
|---|---|---|
| activeIndexChange | (swiper) | アクティブなインデックスが変更されるとイベントが発生します。 |
| afterInit | (swiper) | 初期化直後にイベントが発生します。 |
| beforeDestroy | (swiper) | Swiperが破棄される直前にイベントが発生します。 |
| beforeInit | (swiper) | 初期化の直前にイベントが発生します。 |
| beforeLoopFix | (swiper) | "ループ修正"の直前にイベントが発生します。 |
| beforeResize | (swiper) | リサイズハンドラの前にイベントが発生します。 |
| beforeSlideChangeStart | (swiper) | スライド変更のトランジション開始前にイベントが発生します。 |
| beforeTransitionStart | (swiper, speed, internal) | トランジション開始前にイベントが発生します。 |
| breakpoint | (swiper, breakpointParams) | ブレークポイントが変更されるとイベントが発生します。 |
| changeDirection | (swiper) | 方向が変更されるとイベントが発生します。 |
| click | (swiper, event) | ユーザーがSwiperをクリック/タップするとイベントが発生します。引数として |
| destroy | (swiper) | swiperが破棄されるとイベントが発生します。 |
| doubleClick | (swiper, event) | ユーザーがSwiperをダブルクリック/タップするとイベントが発生します。 |
| doubleTap | (swiper, event) | ユーザーがSwiperのコンテナをダブルタップするとイベントが発生します。引数として |
| fromEdge | (swiper) | Swiperが開始位置または終了位置から移動するときにイベントが発生します。 |
| init | (swiper) | Swiperの初期化直後に発生します。
|
| lock | (swiper) | swiperがロックされている場合( |
| loopFix | (swiper) | "ループ修正"後にイベントが発生します。 |
| momentumBounce | (swiper) | 慣性バウンド時にイベントが発生します。 |
| observerUpdate | (swiper) | オブザーバーが有効になっていて、DOMの変更を検出した場合にイベントが発生します。 |
| orientationchange | (swiper) | 向きの変更(例:横向き→縦向き)時にイベントが発生します。 |
| progress | (swiper, progress) | Swiperの進捗状況が変更されるとイベントが発生します。引数として、常に0から1の範囲の進捗状況を受け取ります。 |
| reachBeginning | (swiper) | Swiperが開始位置(初期位置)に到達するとイベントが発生します。 |
| reachEnd | (swiper) | Swiperが最後のスライドに到達するとイベントが発生します。 |
| realIndexChange | (swiper) | 実際のインデックスが変更されるとイベントが発生します。 |
| resize | (swiper) | swiperのリサイズ操作の直前のウィンドウリサイズ時にイベントが発生します。 |
| setTransition | (swiper, transition) | swiperがアニメーションを開始するたびにイベントが発生します。引数として、現在のトランジション時間(ms単位)を受け取ります。 |
| setTranslate | (swiper, translate) | swiperのラッパーが位置を変更するとイベントが発生します。引数として、現在のtranslate値を受け取ります。 |
| slideChange | (swiper) | 現在アクティブなスライドが変更されるとイベントが発生します。 |
| slideChangeTransitionEnd | (swiper) | 別のスライド(次または前)へのアニメーション後にイベントが発生します。 |
| slideChangeTransitionStart | (swiper) | 別のスライド(次または前)へのアニメーションの開始時にイベントが発生します。 |
| slideNextTransitionEnd | (swiper) | "slideChangeTransitionEnd"と同じですが、"前方"方向のみです。 |
| slideNextTransitionStart | (swiper) | "slideChangeTransitionStart"と同じですが、"前方"方向のみです。 |
| slidePrevTransitionEnd | (swiper) | "slideChangeTransitionEnd"と同じですが、"後方"方向のみです。 |
| slidePrevTransitionStart | (swiper) | "slideChangeTransitionStart"と同じですが、"後方"方向のみです。 |
| slideResetTransitionEnd | (swiper) | スライドを現在のスライドにリセットするアニメーションの最後にイベントが発生します。 |
| slideResetTransitionStart | (swiper) | スライドを現在のスライドにリセットするアニメーションの開始時にイベントが発生します。 |
| sliderFirstMove | (swiper, event) | 最初のタッチ/ドラッグ移動でイベントが発生します。 |
| sliderMove | (swiper, event) | ユーザーがSwiper上で指をタッチして動かすとイベントが発生します。引数として、 |
| slidesGridLengthChange | (swiper) | スライドグリッドが変更された場合にイベントが発生します。 |
| slidesLengthChange | (swiper) | スライドの数が変更された場合にイベントが発生します。 |
| slidesUpdated | (swiper) | スライドとそのサイズが計算および更新された後にイベントが発生します。 |
| snapGridLengthChange | (swiper) | スナップグリッドが変更された場合にイベントが発生します。 |
| snapIndexChange | (swiper) | スナップインデックスが変更されるとイベントが発生します。 |
| tap | (swiper, event) | ユーザーがSwiperをクリック/タップするとイベントが発生します。引数として |
| toEdge | (swiper) | Swiperが開始位置または終了位置に移動するとイベントが発生します。 |
| touchEnd | (swiper, event) | ユーザーがSwiperを離すとイベントが発生します。引数として、 |
| touchMove | (swiper, event) | ユーザーがSwiper上で指をタッチして動かすとイベントが発生します。引数として、 |
| touchMoveOpposite | (swiper, event) | ユーザーがSwiper上で指をタッチして、方向パラメータと反対の方向に動かすとイベントが発生します。引数として、 |
| touchStart | (swiper, event) | ユーザーがSwiperにタッチするとイベントが発生します。引数として、 |
| transitionEnd | (swiper) | トランジション後にイベントが発生します。 |
| transitionStart | (swiper) | トランジションの開始時にイベントが発生します。 |
| unlock | (swiper) | swiperがロック解除された場合( |
| update | (swiper) | swiper.update()の呼び出し後にイベントが発生します。 |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| disabledClass | 文字列 | 'swiper-button-disabled' | ナビゲーションボタンが無効になったときに追加されるCSSクラス名 |
| enabled | ブール値 | 特定のブレークポイントでナビゲーションを有効/無効にするためにブレークポイントで使用するブール値プロパティ | |
| 文字列 | 'swiper-button-hidden' | ナビゲーションボタンが非表示になったときに追加されるCSSクラス名 | |
| hideOnClick | ブール値 | false | スライダーのコンテナをクリックした後、ナビゲーションボタンの表示を切り替えます。 |
| lockClass | 文字列 | 'swiper-button-lock' | ナビゲーションボタンが無効になっているときに追加されるCSSクラス名 |
| navigationDisabledClass | 文字列 | 'swiper-navigation-disabled' | ブレークポイントによってナビゲーションが無効になっているときに、swiperコンテナに追加されるCSSクラス名 |
| nextEl | 任意 | null | クリック後に「次へ」ボタンのように機能する要素のCSSセレクターまたはHTML要素の文字列 |
| prevEl | 任意 | null | クリック後に「前へ」ボタンのように機能する要素のCSSセレクターまたはHTML要素の文字列 |
| プロパティ | ||
|---|---|---|
| swiper.nextEl | HTMLElement | 「次へ」ナビゲーションボタンのHTMLElement |
| swiper.prevEl | HTMLElement | 「前へ」ナビゲーションボタンのHTMLElement |
| メソッド | ||
| swiper.destroy() | ナビゲーションを破棄します。 | |
| swiper.init() | ナビゲーションを初期化します。 | |
| swiper.update() | ナビゲーションボタンの状態(有効/無効)を更新します。 | |
| 名前 | 引数 | 説明 |
|---|---|---|
| navigationHide | (swiper) | ナビゲーションが非表示になったときにイベントが発生します。 |
| navigationNext | (swiper) | ナビゲーションの次へボタンをクリックするとイベントが発生します。 |
| navigationPrev | (swiper) | ナビゲーションの前へボタンをクリックするとイベントが発生します。 |
| navigationShow | (swiper) | ナビゲーションが表示されたときにイベントが発生します。 |
{
--swiper-navigation-size: 44px;
--swiper-navigation-top-offset: 50%;
--swiper-navigation-sides-offset: 10px;
--swiper-navigation-color: var(--swiper-theme-color);
}
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| bulletActiveClass | 文字列 | 'swiper-pagination-bullet-active' | 現在アクティブなページネーション箇条書きのCSSクラス名 |
| bulletClass | 文字列 | 'swiper-pagination-bullet' | 単一のページネーション箇条書きのCSSクラス名 |
| bulletElement | 文字列 | 'span' | 単一のページネーション箇条書きを表すために使用されるHTMLタグを定義します。 |
| clickable | ブール値 | false |
|
| clickableClass | 文字列 | 'swiper-pagination-clickable' | クリック可能な場合にページネーションに設定されるCSSクラス名 |
| currentClass | 文字列 | 'swiper-pagination-current' | 「分数」ページネーションで現在アクティブなインデックスを持つ要素のCSSクラス名 |
| dynamicBullets | ブール値 | false | 多数のスライドで箇条書きページネーションを使用する場合に有効にすると便利です。これにより、同時に表示される箇条書きが少数のみに維持されます。 |
| dynamicMainBullets | 数値 | 1 |
|
| el | 任意 | null | ページネーションを含むコンテナのCSSセレクターまたはHTML要素の文字列 |
| enabled | ブール値 | 特定のブレークポイントでページネーションを有効/無効にするためにブレークポイントで使用するブール値プロパティ | |
| formatFractionCurrent | function(number) | 分数のページネーションの現在の数をフォーマットします。関数は現在の数値を受け取り、フォーマットされた値を返す必要があります。 | |
| formatFractionTotal | function(number) | 分数のページネーションの合計数をフォーマットします。関数は合計数を受け取り、フォーマットされた値を返す必要があります。 | |
| 文字列 | 'swiper-pagination-hidden' | ページネーションが非アクティブになったときのCSSクラス名 | |
| hideOnClick | ブール値 | true | スライダーのコンテナをクリックした後に、ページネーションコンテナの表示/非表示を切り替えます。 |
| horizontalClass | 文字列 | 'swiper-pagination-horizontal' | 水平方向のスライダーでページネーションに設定されるCSSクラス名 |
| lockClass | 文字列 | 'swiper-pagination-lock' | ページネーションが無効になっているときに設定されるCSSクラス名 |
| modifierClass | 文字列 | 'swiper-pagination-' | パラメータに応じてページネーションに追加される修飾子CSSクラス名の先頭部分 |
| paginationDisabledClass | 文字列 | 'swiper-pagination-disabled' | ブレークポイントによってページネーションが無効になっている場合に、スライダーコンテナとページネーション要素に追加されるCSSクラス名 |
| progressbarFillClass | 文字列 | 'swiper-pagination-progressbar-fill' | ページネーションのプログレスバーの塗りつぶし要素のCSSクラス名 |
| progressbarOpposite | ブール値 | false | ページネーションのプログレスバーをスライダーの |
| progressbarOppositeClass | 文字列 | 'swiper-pagination-progressbar-opposite' | ページネーションのプログレスバーの逆向きのCSSクラス名 |
| renderBullet | function(index, className) | このパラメータを使用すると、ページネーションのドットを完全にカスタマイズできます。ここでは、ページネーションドットの | |
| renderCustom | function(swiper, current, total) | このパラメータは、 | |
| renderFraction | function(currentClass, totalClass) | このパラメータを使用すると、「分数」ページネーションのHTMLをカスタマイズできます。 | |
| renderProgressbar | function(progressbarFillClass) | このパラメータを使用すると、「プログレス」ページネーションをカスタマイズできます。 | |
| totalClass | 文字列 | 'swiper-pagination-total' | 「分数」ページネーションの「スナップ」の総数を持つ要素のCSSクラス名 |
| type | 'progressbar' | 'bullets' | 'fraction' | 'custom' | 'bullets' | ページネーションのタイプを表す文字列。 |
| verticalClass | 文字列 | 'swiper-pagination-vertical' | 垂直方向のスライダーでページネーションに設定されるCSSクラス名 |
| プロパティ | ||
|---|---|---|
| swiper.bullets | HTMLElement[] | ページネーションドットのHTML要素の配列。特定の要素を取得するには、 |
| swiper.el | HTMLElement | ページネーションコンテナ要素のHTMLElement |
| メソッド | ||
| swiper.destroy() | ページネーションを破棄します | |
| swiper.init() | ページネーションを初期化します | |
| swiper.render() | ページネーションのレイアウトをレンダリングします | |
| swiper.update() | ページネーションの状態(有効/無効/アクティブ)を更新します | |
| 名前 | 引数 | 説明 |
|---|---|---|
| paginationHide | (swiper) | ページネーションが非表示になったときに発生するイベント |
| paginationRender | (swiper, paginationEl) | ページネーションがレンダリングされた後に発生するイベント |
| paginationShow | (swiper) | ページネーションが表示されたときに発生するイベント |
| paginationUpdate | (swiper, paginationEl) | ページネーションが更新されたときに発生するイベント |
{
--swiper-pagination-color: var(--swiper-theme-color);
--swiper-pagination-left: auto;
--swiper-pagination-right: 8px;
--swiper-pagination-bottom: 8px;
--swiper-pagination-top: auto;
--swiper-pagination-fraction-color: inherit;
--swiper-pagination-progressbar-bg-color: rgba(0, 0, 0, 0.25);
--swiper-pagination-progressbar-size: 4px;
--swiper-pagination-bullet-size: 8px;
--swiper-pagination-bullet-width: 8px;
--swiper-pagination-bullet-height: 8px;
--swiper-pagination-bullet-inactive-color: #000;
--swiper-pagination-bullet-inactive-opacity: 0.2;
--swiper-pagination-bullet-opacity: 1;
--swiper-pagination-bullet-horizontal-gap: 4px;
--swiper-pagination-bullet-vertical-gap: 6px;
}
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| dragClass | 文字列 | 'swiper-scrollbar-drag' | スクロールバーのドラッグ可能な要素のCSSクラス |
| dragSize | 数値 | 'auto' | 'auto' | スクロールバーのドラッグ可能な要素のサイズ(px単位) |
| draggable | ブール値 | false | スクロールバーをドラッグ可能にしてスライダーの位置を制御できるようにするには、 |
| el | 任意 | null | スクロールバーを持つコンテナのCSSセレクタまたはHTML要素を表す文字列。 |
| enabled | ブール値 | 特定のブレークポイントでスクロールバーを有効/無効にするためにブレークポイントで使用するブール値プロパティ | |
| hide | ブール値 | true | ユーザー操作後にスクロールバーを自動的に非表示にする |
| horizontalClass | 文字列 | 'swiper-scrollbar-horizontal' | 水平方向のスライダーでスクロールバーに設定されるCSSクラス名 |
| lockClass | 文字列 | 'swiper-scrollbar-lock' | スクロールバーが無効になっている場合の、スクロールバー要素の追加のCSSクラス |
| scrollbarDisabledClass | 文字列 | 'swiper-scrollbar-disabled' | ブレークポイントによってスクロールバーが無効になっている場合に、スライダーコンテナとスクロールバー要素に追加されるCSSクラス名 |
| snapOnRelease | ブール値 | false | スクロールバーを離したときにスライダーの位置をスライドにスナップさせるには、 |
| verticalClass | 文字列 | 'swiper-scrollbar-vertical' | 垂直方向のスライダーでスクロールバーに設定されるCSSクラス名 |
| プロパティ | ||
|---|---|---|
| swiper.dragEl | HTMLElement | スクロールバーのドラッグ可能なハンドラ要素のHTMLElement |
| swiper.el | HTMLElement | スクロールバーコンテナ要素のHTMLElement |
| メソッド | ||
| swiper.destroy() | スクロールバーを破棄します | |
| swiper.init() | スクロールバーを初期化します | |
| swiper.setTranslate() | スクロールバーのtranslateを更新します | |
| swiper.updateSize() | スクロールバーのトラックとハンドラのサイズを更新します | |
| 名前 | 引数 | 説明 |
|---|---|---|
| scrollbarDragEnd | (swiper, event) | ドラッグ可能なスクロールバーのドラッグ終了時に発生するイベント |
| scrollbarDragMove | (swiper, event) | ドラッグ可能なスクロールバーのドラッグ移動時に発生するイベント |
| scrollbarDragStart | (swiper, event) | ドラッグ可能なスクロールバーのドラッグ開始時に発生するイベント |
{
--swiper-scrollbar-border-radius: 10px;
--swiper-scrollbar-top: auto;
--swiper-scrollbar-bottom: 4px;
--swiper-scrollbar-left: auto;
--swiper-scrollbar-right: 4px;
--swiper-scrollbar-sides-offset: 1%;
--swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
--swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
--swiper-scrollbar-size: 4px;
}
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| delay | 数値 | 3000 | トランジション間の遅延時間(ミリ秒単位)。このパラメータが指定されていない場合、自動再生は無効になります 特定の スライドに異なる遅延時間を指定する必要がある場合は、スライドに |
| disableOnInteraction | ブール値 | true |
|
| pauseOnMouseEnter | ブール値 | false | 有効にすると、ポインタ(マウス)がスライダーコンテナに入ったときに自動再生が一時停止します。 |
| reverseDirection | ブール値 | false | 逆方向での自動再生を有効にします |
| stopOnLastSlide | ブール値 | false | このパラメータを有効にすると、最後のスライドに到達したときに自動再生が停止します(ループモードでは効果がありません)。 |
| waitForTransition | ブール値 | true | 有効にすると、自動再生はラッパートランジションが完了するのを待ってから続行します。スライダーにトランジションがない可能性がある仮想translateを使用している場合は、無効にできます。 |
| プロパティ | ||
|---|---|---|
| swiper.paused | ブール値 | 自動再生が一時停止しているかどうか |
| swiper.running | ブール値 | 自動再生が有効で実行中かどうか |
| swiper.timeLeft | 数値 | 自動再生が一時停止している場合、次のスライドへのトランジションまでの残り時間(ミリ秒単位)が含まれます |
| メソッド | ||
| swiper.pause() | 自動再生を一時停止します | |
| swiper.resume() | 自動再生を再開します | |
| swiper.start() | 自動再生を開始します | |
| swiper.stop() | 自動再生を停止します | |
| 名前 | 引数 | 説明 |
|---|---|---|
| autoplay | (swiper) | 自動再生によってスライドが変更されたときに発生するイベント |
| autoplayPause | (swiper) | 自動再生が一時停止したときに発生するイベント |
| autoplayResume | (swiper) | 自動再生が再開したときに発生するイベント |
| autoplayStart | (swiper) | 自動再生が開始されたときに発生するイベント |
| autoplayStop | (swiper) | 自動再生が停止したときに発生するイベント |
| autoplayTimeLeft | (swiper, timeLeft, percentage) | 自動再生が有効になっている間、継続的にトリガーされるイベント。次のスライドへのトランジションまでの残り時間(ミリ秒単位)と、自動再生遅延に関連する時間の割合が含まれます |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| enabled | ブール値 | false | フリーモードが有効になっているかどうか |
| minimumVelocity | 数値 | 0.02 | フリーモードの運動量をトリガーするために必要な最小のtouchmove速度 |
| momentum | ブール値 | true | 有効にすると、スライドはリリース後しばらく移動し続けます。 |
| momentumBounce | ブール値 | true | フリーモードでの運動量バウンスを無効にする場合は、 |
| momentumBounceRatio | 数値 | 1 | 値が高いほど、運動量バウンス効果が大きくなります |
| momentumRatio | 数値 | 1 | 値が高いほど、スライダーをリリース後の運動量距離が長くなります |
| momentumVelocityRatio | 数値 | 1 | 値が高いほど、スライダーをリリース後の運動量速度が大きくなります |
| sticky | ブール値 | false | フリーモードでスライド位置へのスナップを有効にするには、有効に設定します |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| fill | 'row' | 'column' | 'column' |
|
| rows | 数値 | 1 | 複数行レイアウトのスライドの行数 |
操作モジュールは、スライドを操作するための便利なスライダーメソッドを追加します。スライダーCoreバージョンでのみ使用することを推奨し、スライダーReactやVueで使用することを目的としていません。
| メソッド | ||
|---|---|---|
| swiper.addSlide(index, slides) | 指定されたインデックスに新しいスライドを追加します。slides は、HTMLElement、新しいスライドを含むHTML文字列、またはそのようなスライドの配列である可能性があります。例: | |
| swiper.appendSlide(slides) | 新しいスライドを末尾に追加します。slides は、HTMLElement、新しいスライドを含むHTML文字列、またはそのようなスライドの配列である可能性があります。例: | |
| swiper.prependSlide(slides) | 新しいスライドを先頭に追加します。slides は、HTMLElement、新しいスライドを含むHTML文字列、またはそのようなスライドの配列である可能性があります。例: | |
| swiper.removeAllSlides() | すべてのスライドを削除します | |
| swiper.removeSlide(slideIndex) | 選択したスライドを削除します。slideIndex は、削除するスライドのインデックスを示す数値、またはインデックスの配列である可能性があります。 | |
Swiperは、swiper/スライドのネストされた要素に対するパララックス遷移効果をサポートしています。サポートされているパララックス要素には2つの種類があります。
swiperの直接の子要素。このような要素のパララックス効果は、スライダーの合計進行状況に依存します。パララックス背景に役立ちます。パララックス効果を有効にするには、parallax:trueパラメータを渡してSwiperを初期化し、必要な要素に次のいずれか(または組み合わせ)の属性を追加する必要があります。
data-swiper-parallax - transform-translateパララックス遷移を有効にします。この属性は以下を受け入れます。
number - 進行状況に応じて要素を移動させるpx単位の値(上記の例のタイトルやサブタイトルなど)。この場合、このような要素は、スライドの位置(次または前)に応じて、±このpx値で移動します。percentage - 進行状況と要素のサイズに応じて要素を移動させる("parallax-bg"など)。この場合、このような要素は、スライドの位置(次または前)に応じて、±そのサイズのこのパーセンテージ(水平方向の幅、垂直方向の高さ)で移動します。したがって、要素の幅が400pxで、data-swiper-parallax="50%"を指定した場合、±200px移動します。data-swiper-parallax-x - 同様ですが、x軸方向の場合。data-swiper-parallax-y - 同様ですが、y軸方向の場合。data-swiper-parallax-scale - パララックス要素が「非アクティブ」(アクティブなスライドではない)状態にあるときのスケール比。data-swiper-parallax-opacity - パララックス要素が「非アクティブ」(アクティブなスライドではない)状態にあるときの不透明度。data-swiper-parallax-duration - パララックス要素のカスタム遷移時間。<div class="swiper">
<!-- Parallax background element -->
<div
class="parallax-bg"
style="background-image:url(path/to/image.jpg)"
data-swiper-parallax="-23%"
></div>
<div class="swiper-wrapper">
<div class="swiper-slide">
<!-- Each slide has parallax title -->
<div class="title" data-swiper-parallax="-100">Slide 1</div>
<!-- Parallax subtitle -->
<div class="subtitle" data-swiper-parallax="-200">Subtitle</div>
<!-- And parallax text with custom transition duration -->
<div
class="text"
data-swiper-parallax="-300"
data-swiper-parallax-duration="600"
>
<p>Lorem ipsum dolor sit amet, ...</p>
</div>
<!-- Opacity parallax -->
<div data-swiper-parallax-opacity="0.5">I will change opacity</div>
<!-- Scale parallax -->
<div data-swiper-parallax-scale="0.15">I will change scale</div>
</div>
...
</div>
</div>
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| enabled | ブール値 | false | スライダー内で「パララックス」要素を使用する場合は有効にします。 |
バージョン9以降、Swiperには、ネイティブブラウザの遅延読み込み機能に依存しているため、特定の遅延読み込みAPIはありません。遅延読み込みを使用するには、画像にloading="lazy"を設定し、プリローダー要素を追加するだけです。
<div class="swiper">
<div class="swiper-wrapper">
<!-- Lazy image -->
<div class="swiper-slide">
<img src="path/to/picture-1.jpg" loading="lazy" />
<div class="swiper-lazy-preloader"></div>
</div>
<!-- Lazy image with srcset -->
<div class="swiper-slide">
<img
src="path/to/logo-small.png"
srcset="path/to/logo-large.png 2x"
loading="lazy"
/>
<div class="swiper-lazy-preloader"></div>
</div>
</div>
</div>
ご覧のとおり
loading="lazy"属性が必要です。<div class="swiper-lazy-preloader"></div>
または、ダークレイアウト用の白いプリローダースピナー。
<div class="swiper-lazy-preloader swiper-lazy-preloader-white"></div>
この効果を機能させるには、必ずeffectパラメータを'fade'に設定してください。
crossFadeをtrueに設定する必要があることに注意してください。| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| crossFade | ブール値 | false | スライドのクロスフェードを有効にします |
この効果を機能させるには、必ずeffectパラメータを'coverflow'に設定してください。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| depth | 数値 | 100 | px単位の奥行きオフセット(スライドはZ軸で移動します) |
| modifier | 数値 | 1 | 効果の乗数 |
| rotate | 数値 | 50 | 度単位のスライド回転 |
| scale | 数値 | 1 | スライドスケール効果 |
| slideShadows | ブール値 | true | スライドシャドウを有効にします |
| stretch | 数値 | 0 | スライド間のスペースを拡張します(px単位) |
この効果を機能させるには、必ずeffectパラメータを'flip'に設定してください。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| limitRotation | ブール値 | true | 端のスライドの回転を制限します |
| slideShadows | ブール値 | true | スライドシャドウを有効にします |
この効果を機能させるには、必ずeffectパラメータを'cube'に設定してください。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| shadow | ブール値 | true | メインスライダーの影を有効にします |
| shadowOffset | 数値 | 20 | px単位のメイン影オフセット |
| shadowScale | 数値 | 0.94 | メイン影のスケール比率 |
| slideShadows | ブール値 | true | スライドシャドウを有効にします |
この効果を機能させるには、必ずeffectパラメータを'cards'に設定してください。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| perSlideOffset | 数値 | 8 | スライドごとのオフセット距離(px単位) |
| perSlideRotate | 数値 | 2 | スライドごとの回転角度(度単位) |
| rotate | ブール値 | true | カードの回転を有効にします |
| slideShadows | ブール値 | true | スライドシャドウを有効にします |
この効果を機能させるには、必ずeffectパラメータを'creative'に設定してください。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| limitProgress | 数値 | 1 | サイドスライドの量に対する進行/オフセットを制限します。 |
| next | CreativeEffectTransform | 次のスライドの変形。 | |
| perspective | ブール値 | true | カスタム変形に3D変形( |
| prev | CreativeEffectTransform | 前のスライドの変形。次のタイプのオブジェクトを受け入れます。 | |
| progressMultiplier | 数値 | 1 | スライドの変形と不透明度を乗算できます。 |
| shadowPerProgress | ブール値 | false |
|
コントローラーコンポーネントに加えて、Swiperには、2つのスワイパーを同期するために使用されるコントローラーよりも、より正確な方法で追加のサムネイルスワイパーと連携するように設計されたサムネイルコンポーネントが付属しています。
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| autoScrollOffset | 数値 | 0 | どのサムネイルのアクティブスライドが端から自動的にサムネイルをスクロールするかを設定できます。たとえば、1に設定すると、最後に表示されているサムネイルがアクティブ化されると(端から1)、サムネイルが自動スクロールされます。 |
| multipleActiveThumbs | ブール値 | true | 有効にすると、複数のサムネイルスライドがアクティブになる可能性があります |
| slideThumbActiveClass | 文字列 | 'swiper-slide-thumb-active' | アクティブ化されたサムネイルスワイパーのスライドに追加される追加のクラス |
| swiper | 任意 | null | サムネイルとして使用されるスワイパーのスワイパーインスタンス、またはサムネイルスワイパーを初期化するためのスワイパーパラメータを持つオブジェクト |
| thumbsContainerClass | 文字列 | 'swiper-thumbs' | サムネイルスワイパーに追加される追加のクラス |
| プロパティ | ||
|---|---|---|
| swiper.swiper | 任意 | サムネイルスワイパーのスワイパーインスタンス |
| メソッド | ||
| swiper.init() | サムネイルを初期化します | |
| swiper.update(initial) | サムネイルを更新します | |
Swiperは、ピンチジェスチャーやダブルタップによるズームイン/アウトで画像をズームインできる(単一の写真を閲覧するときにiOSで表示されるものと同様の)ズーム画像機能をサポートしています。この場合、追加のレイアウトが必要です。
<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="swiper-zoom-container">
<img src="path/to/image1.jpg" />
</div>
</div>
<div class="swiper-slide">
<div class="swiper-zoom-container">
<img src="path/to/image2.jpg" />
</div>
</div>
<div class="swiper-slide">Plain slide with text</div>
<div class="swiper-slide">
<!-- Override maxRatio parameter -->
<div class="swiper-zoom-container" data-swiper-zoom="5">
<img src="path/to/image1.jpg" />
</div>
</div>
</div>
</div>
swiper-zoom-containerクラスを持つdivでラップする必要があります。img、picture、またはcanvas要素のいずれかをズームすることを想定しています。他のカスタム要素をズームする場合は、この要素にswiper-zoom-targetクラスを追加するだけです。例:
<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="swiper-zoom-container">
<!-- custom zoomable element -->
<div
class="swiper-zoom-target"
style="background-image: url(...)"
></div>
</div>
</div>
</div>
</div>
data-swiper-zoom属性を使用することで、特定のスライドのmaxRatioパラメータを上書きできます。| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| containerClass | 文字列 | 'swiper-zoom-container' | ズームコンテナのCSSクラス名 |
| limitToOriginalSize | ブール値 | false | trueに設定すると、画像は元のサイズの100%を超えて拡大縮小されません |
| maxRatio | 数値 | 3 | 画像の最大ズーム倍率 |
| minRatio | 数値 | 1 | 画像の最小ズーム倍率 |
| toggle | ブール値 | true | スライドのダブルタップによるズームインを有効/無効にします |
| zoomedSlideClass | 文字列 | 'swiper-slide-zoomed' | ズームインされたコンテナのCSSクラス名 |
| プロパティ | ||
|---|---|---|
| swiper.enabled | ブール値 | ズームモジュールが有効かどうか |
| swiper.scale | 数値 | 現在の画像スケール比 |
| メソッド | ||
| swiper.disable() | ズームモジュールを無効にします | |
| swiper.enable() | ズームモジュールを有効にします | |
| swiper.in(ratio) | 現在アクティブなスライドの画像をズームインします。オプションで、カスタムズーム比を受け入れます | |
| swiper.out() | 現在アクティブなスライドの画像をズームアウトします | |
| swiper.toggle(event) | 現在アクティブなスライドの画像のズームを切り替えます | |
| 名前 | 引数 | 説明 |
|---|---|---|
| zoomChange | (swiper, scale, imageEl, slideEl) | ズーム変更時にイベントが発火します |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| enabled | ブール値 | false | キーボードコントロールを有効にするには、 |
| onlyInViewport | ブール値 | true | 有効にすると、現在ビューポート内にあるスライダーを制御します |
| pageUpDown | ブール値 | true | 有効にすると、Page UpキーとPage Downキーによるキーボードナビゲーションが有効になります |
| プロパティ | ||
|---|---|---|
| swiper.enabled | ブール値 | キーボード操作が有効かどうか |
| メソッド | ||
| swiper.disable() | キーボード操作を無効にする | |
| swiper.enable() | キーボード操作を有効にする | |
| 名前 | 引数 | 説明 |
|---|---|---|
| keyPress | (swiper, keyCode) | キーが押されたときに発生するイベント |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| enabled | ブール値 | false | マウスホイール操作を有効にするには |
| eventsTarget | 任意 | 'container' | マウスホイールイベントを受け付けるコンテナのCSSセレクターまたはHTML要素の文字列。デフォルトはswiperです |
| forceToAxis | ブール値 | false | マウスホイールのスワイプを軸に強制するには、 |
| invert | ブール値 | false | スライド方向を反転するには、 |
| noMousewheelClass | 文字列 | 'swiper-no-mousewheel' | このクラスを持つ要素のスクロールは無視されます |
| releaseOnEdges | ブール値 | false |
|
| sensitivity | 数値 | 1 | マウスホイールデータの乗数。マウスホイールの感度を調整できます |
| thresholdDelta | null | 数値 | null | swiperのスライド変更をトリガーするための最小マウスホイールスクロールデルタ |
| thresholdTime | null | 数値 | null | swiperのスライド変更をトリガーするための最小マウスホイールスクロール時間デルタ(ミリ秒単位) |
| プロパティ | ||
|---|---|---|
| swiper.enabled | ブール値 | マウスホイール操作が有効かどうか |
| メソッド | ||
| swiper.disable() | マウスホイール操作を無効にする | |
| swiper.enable() | マウスホイール操作を有効にする | |
| 名前 | 引数 | 説明 |
|---|---|---|
| scroll | (swiper, event) | マウスホイールスクロールで発生するイベント |
仮想スライドモジュールを使用すると、DOM内に必要な数のスライドのみを保持できます。特に、DOMツリーが重いスライドや画像が多い場合は、パフォーマンスとメモリの問題に関して非常に役立ちます。
slidesPerView: 'auto'では動作しないことに注意してください| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| addSlidesAfter | 数値 | 0 | アクティブなスライドの後に事前にレンダリングするスライドの量を増やします |
| addSlidesBefore | 数値 | 0 | アクティブなスライドの前に事前にレンダリングするスライドの量を増やします |
| cache | ブール値 | true | レンダリングされたスライドのHTML要素のDOMキャッシュを有効にします。レンダリングされると、キャッシュに保存され、そこから再利用されます。 |
| enabled | ブール値 | false | 仮想スライドが有効かどうか |
| renderExternal | function(data) | 外部レンダリングのための関数(例:React.jsやVue.jsのようなDOM操作と状態を処理するための他のライブラリを使用)。引数として、次のプロパティを持つ
| |
| renderExternalUpdate | ブール値 | true | 有効(デフォルト)の場合、renderExternalが呼び出された直後にSwiperレイアウトを更新します。非同期にレンダリングするレンダリングライブラリで使用する場合は、無効にしてSwiperを手動で更新すると便利です。 |
| renderSlide | function(slide, index) | スライドをレンダリングする関数。引数として、 | |
| slides | T[] | [] | スライドの配列 |
| プロパティ | ||
|---|---|---|
| swiper.cache | オブジェクト | キャッシュされたスライドHTML要素を持つオブジェクト |
| swiper.from | 数値 | レンダリングされた最初のスライドのインデックス |
| swiper.slides | T[] |
|
| swiper.to | 数値 | レンダリングされた最後のスライドのインデックス |
| メソッド | ||
| swiper.appendSlide(slide) | スライドを追加します。
| |
| swiper.prependSlide(slide) | スライドを先頭に追加します。
| |
| swiper.removeAllSlides() | すべてのスライドを削除します
| |
| swiper.removeSlide(slideIndexes) | 特定のスライドまたは複数のスライドを削除します。
| |
| swiper.update(force) | 仮想スライドの状態を更新します | |
バージョン9以降、Swiper仮想スライドは、DOMに元々レンダリングされたスライドで動作できます。初期化時に、DOMから削除し、キャッシュしてから、必要なものを再利用します
<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
...
<div class="swiper-slide">Slide 100</div>
</div>
</div>
<script>
const swiper = new Swiper('.swiper', {
virtual: {
enabled: true,
},
});
</script>
ハッシュナビゲーションは、特定のハッシュを持つ特定ののスライドへのリンクを持つことを目的としており、特定の開いたスライドでページをロードできるようにします。
これを機能させるには、hashNavigation:trueパラメーターを渡して有効にし、data-hash属性にスライドハッシュを追加する必要があります
<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide" data-hash="slide1">Slide 1</div>
<div class="swiper-slide" data-hash="slide2">Slide 2</div>
<div class="swiper-slide" data-hash="slide3">Slide 3</div>
<div class="swiper-slide" data-hash="slide4">Slide 4</div>
<div class="swiper-slide" data-hash="slide5">Slide 5</div>
...
</div>
</div>
const swiper = new Swiper('.swiper', {
//enable hash navigation
hashNavigation: true,
});
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| getSlideIndex | function(swiper, hash) | ハッシュでDOM内のスライドを見つけることが不可能な場合(例:まだレンダリングされていない場合)、仮想スライドで使用するように設計されています | |
| replaceState | ブール値 | false | 履歴に追加する代わりに、現在のURL状態を新しいURL状態に置き換えるために、hashnavに加えて機能します |
| watchState | ブール値 | false | ドキュメントロケーションに直接ハッシュを設定したり、ブラウザの履歴を使用してスライド間のナビゲーションを(hashnavが有効な場合)有効にするには、 |
| 名前 | 引数 | 説明 |
|---|---|---|
| hashChange | (swiper) | ウィンドウのハッシュ変更で発生するイベント |
| hashSet | (swiper) | swiperがハッシュを更新したときに発生するイベント |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| enabled | ブール値 | false | 履歴プラグインを有効にします。 |
| keepQuery | ブール値 | false | ブラウザのURLを変更するときにクエリパラメーターを保持します。 |
| key | 文字列 | 'slides' | スライドのURLキー |
| replaceState | ブール値 | false | 履歴に追加する代わりに、現在のURL状態を新しいURL状態に置き換えるために、hashnavまたは履歴に加えて機能します |
| root | 文字列 | '' | Swiperページルート。ルートWebサイトページ以外でSwiper履歴モードを使用する場合に指定すると便利です。たとえば、 |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| by | 'slide' | 'container' | 'slide' | 別のスライダーを制御する方法を定義します。スライドごとに(他のスライダーのグリッドに関して)またはすべてのスライド/コンテナ(合計スライダーのパーセンテージに応じて)に依存します。 |
| control | 任意 | このSwiperで制御する必要がある別のSwiperインスタンスまたはSwiperインスタンスの配列をここに渡します。また、Swiper要素のCSSセレクターの文字列、またはSwiper要素のHTMLElementも受け入れます | |
| inverse | ブール値 | false |
|
| プロパティ | ||
|---|---|---|
| swiper.control | 任意 | このSwiperで制御する必要がある別のSwiperインスタンスまたはSwiperインスタンスの配列をここに渡します |
| 名前 | タイプ | デフォルト | 説明 |
|---|---|---|---|
| containerMessage | null | 文字列 | null | 外側のswiperコンテナのスクリーンリーダーのメッセージ |
| containerRoleDescriptionMessage | null | 文字列 | null | 外側のswiperコンテナの役割を説明するスクリーンリーダーのメッセージ |
| enabled | ブール値 | true | A11yを有効にします |
| firstSlideMessage | 文字列 | 'これが最初のスライドです' | swiperが最初のスライドにある場合の前のボタンのスクリーンリーダーのメッセージ |
| id | null | 文字列 | 数値 | null | swiper-wrapperに設定する |
| itemRoleDescriptionMessage | null | 文字列 | null | スライド要素の役割を説明するスクリーンリーダーのメッセージ |
| lastSlideMessage | 文字列 | 'これが最後のスライドです' | swiperが最後のスライドにある場合の次のボタンのスクリーンリーダーのメッセージ |
| nextSlideMessage | 文字列 | '次のスライド' | 次のボタンのスクリーンリーダーのメッセージ |
| notificationClass | 文字列 | 'swiper-notification' | A11y通知のCSSクラス名 |
| paginationBulletMessage | 文字列 | 'スライドへ移動'{{index}}' | 単一のページネーションブレットのスクリーンリーダーのメッセージ |
| prevSlideMessage | 文字列 | '前のスライド' | 前のボタンのスクリーンリーダーのメッセージ |
| slideLabelMessage | 文字列 | '{{index}} / {{slidesLength}}' | スライド要素のラベルを説明するスクリーンリーダーのメッセージ |
| slideRole | 文字列 | 'group' | swiperスライドの |
Swiperのカスタムバージョンを作成するには、2つのオプションがあります。
プロジェクトでJSモジュールをサポートするバンドラーを使用する場合は、必要なモジュールのみをインポートできます
// Import Swiper and modules
import Swiper from 'swiper';
import { Navigation, Pagination, Scrollbar } from 'swiper/modules';
// Now you can use Swiper
const swiper = new Swiper('.swiper', {
// Install modules
modules: [Navigation, Pagination, Scrollbar],
speed: 500,
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
// ...
});
次のモジュールがエクスポートされています
Virtual - 仮想スライドモジュールKeyboard - キーボード操作モジュールMousewheel - マウスホイール操作モジュールNavigation - ナビゲーションモジュールPagination - ページネーションモジュールScrollbar - スクロールバーモジュールParallax - パララックスモジュールFreeMode - フリーモードモジュールGrid - グリッドモジュールManipulation - スライド操作モジュール(Coreバージョンのみ)Zoom - ズームモジュールController - コントローラーモジュールA11y - アクセシビリティモジュールHistory - 履歴ナビゲーションモジュールHashNavigation - ハッシュナビゲーションモジュールAutoplay - 自動再生モジュールEffectFade - フェードエフェクトモジュールEffectCube - キューブエフェクトモジュールEffectFlip - フリップエフェクトモジュールEffectCoverflow - カバフローエフェクトモジュールEffectCards - カードエフェクトモジュールEffectCreative - クリエイティブエフェクトモジュールThumbs - サムズモジュールSwiperには、必要なモジュールのみを含めることができるカスタムライブラリバージョンをビルドできるgulpビルダーが付属しています。以下が必要です。
Swiper GitHubリポジトリをダウンロードし、ローカルフォルダに解凍します。
Node.jsをインストールします(インストールされていない場合)。
次に、必要な依存関係をインストールする必要があります。ダウンロードして解凍したSwiperリポジトリのあるフォルダに移動し、ターミナルで実行します。
$ npm install
scripts/build-config.jsファイルを開きます。
module.exports = {
// remove modules you don't need
modules: [
'virtual',
'keyboard',
'mousewheel',
'navigation',
'pagination',
'scrollbar',
'parallax',
'zoom',
'controller',
'a11y',
'history',
'hash-navigation',
'autoplay',
'thumbs',
'free-mode',
'grid',
'manipulation',
'effect-fade',
'effect-cube',
'effect-flip',
'effect-coverflow',
'effect-creative',
'effect-cards',
],
};
これで、Swiperのカスタムバージョンをビルドする準備ができました。
$ npm run build:prod
以上です。生成されたCSSファイルとJSファイル、およびそれらのminifyバージョンは、dist/フォルダにあります。
Swiperは完全に型付けされており、Swiper型とSwiperOptions型をエクスポートします。
// main.ts
import Swiper from 'swiper';
import { SwiperOptions } from 'swiper/types';
const swiperParams: SwiperOptions = {
slidesPerView: 3,
spaceBetween: 50,
};
const swiper = new Swiper('.swiper', swiperParams);
すべての型、オプション、プロパティ、およびメソッドについては、自動生成されたTypeScript定義エクスプローラーを確認することもできます。