速報

AWS SDK for pandasのIceberg書き込みにSQL注入|Glueの変更権限も点検

CATEGORY

【Swiper】インフィニットスライドを作成する方法

※本ページのリンクにはプロモーションが含まれています。

【Swiper】インフィニットスライドを作成する方法

目次

本記事では、Swiperでインフィニットスライドを作成する方法をご紹介しています。インフィニットスライドには有名なライブラリが存在しますが、ここではSwiperを使ってインフィニットスライドを作成してみたいと思います。

では、解説していきます。

スポンサーリンク

本記事で作成するもの

Swiperでインフィニットスライドを作成します。インフィニットスライドとは、スライドが無限にループ表示されるスライドアニメーションを指します。下記にデモを用意しましたので、動作をご確認ください。

See the Pen 7586 by ryohei (@intotheprogram) on CodePen.

上記デモはSwiperを使って作成したものです。Swiperでも問題なく動作していますね。ばっちりです。次項から上記デモで使用しているソースの内容を詳しくご紹介していきます。

Swiperでインフィニットスライドを作成する

Swiperでインフィニットスライドを作成します。Swiperを使うにあたって本体ライブラリが必要になりますので、公式サイトを参考にでライブラリを読み込みます。

<!-- CSS -->
<link rel="stylesheet" href="https://unpkg.com/swiper@8/swiper-bundle.min.css">
<!-- JavaScript -->
<script src="https://unpkg.com/swiper@8/swiper-bundle.min.js"></script>

参考:https://swiperjs.com/get-started

HTML

ライブラリの読み込みが完了したら、Swiperのレイアウトに少し追記して、画像を使用したスライダーを作成します。サンプルで使用している画像はLorem Picsumという画像配信サービスを利用しています。コピペでも画像が表示されますので、そのままご利用ください。

<div class="swiper">
    <div class="swiper-wrapper">
        <div class="swiper-slide">
            <img src="https://picsum.photos/id/1011/1280/720" alt="">
        </div>
        <div class="swiper-slide">
            <img src="https://picsum.photos/id/1025/1280/720" alt="">
        </div>
        <div class="swiper-slide">
            <img src="https://picsum.photos/id/1039/1280/720" alt="">
        </div>
        <div class="swiper-slide">
            <img src="https://picsum.photos/id/104/1280/720" alt="">
        </div>
        <div class="swiper-slide">
            <img src="https://picsum.photos/id/110/1280/720" alt="">
        </div>
    </div>
</div>

CSS

上記のHTMLにCSSでスタイルを定義します。Swiperにはデフォルトでイージング(スライダーの加速度)が設定されています。デフォルトではease-outというイージングが指定されているため、下記のCSSでイージングを上書きします。イージングには好みがありますので、適宜修正していただければと思います。

.swiper-wrapper {
    //ループ時のアニメーションの緩急を一定にする(デフォルトはease-out)
    transition-timing-function: linear;
}

JavaScript

最後にJavaScriptでSwiperを初期化します。ここではインフィニットスライドの実装に役立ちそうなパラメータを追加しています。コメントアウトで無効化している行につきましては、必要であれば有効化してご利用ください。

const swiper = new Swiper('.swiper', {
    slidesPerView: 'auto',
    // freeMode: true,
    // simulateTouch: false,
    loop: true,
    loopedSlides: 5,
    speed: 20000, 
    autoplay: {
        delay: 0,
        // disableOnInteraction: false,
        // pauseOnMouseEnter: true,
    },
});

上記で指定しているパラメータは下記の通りです。

使用パラメータの説明

パラメータ名説明
slidesPerViewauto
Swiperに表示するスライドを枚数を自動で設定する。
freeModetrue
タッチ・ドラッグのスライド操作を受け付ける。(お好みで)
simulateTouchfalse
タッチ・ドラッグのスライド操作を受け付けない。(お好みで)
looptrue
Swiperのスライドをループ表示する。
loopedSlides5
Swiperのスライドをループする際に複製するスライド枚数を指定する。
speed20000
Swiperのスライドの切り替わる時間をミリ秒で指定する。
delay0
オートプレイでスライドが切り替わるまでの待機時間を指定する。
disableOnInteractionfalse
Swiperをユーザーが操作した後にオートプレイが停止しないようにする。
pauseOnMouseEntertrue
Swiperにマウスを乗せるとオートプレイが一時停止する。
※私の環境ではうまく動作しませんでした?

これでSwiperでインフィニットスライドを作成することができます。

スポンサーリンク

最後に

Swiperには本記事でご紹介したパラメータの他に、魅力的なパラメータが数多く用意されており、簡単なものから複雑なものまで、条件を満たしたスライダーを簡単に作成することができます。扱いに慣れるまでにある程度の時間が必要ですが、少しずつ触って、動かして、自分の手で好みのスライダーを作ってみてくださいね。

参考:https://swiperjs.com/swiper-api

以上、Swiperでインフィニットスライドを作成する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

CDN

世界各地のサーバーにWebサイトのファイルを複製して置き、利用者に近いサーバーから配信する仕組み。表示の高速化や負荷の分散に使う。

詳しく見る