Swiper.jsプラグインを使用すると、カルーセル画像を非常に簡単に実装できます。

Swiper.jsプラグインを使用すると、カルーセル画像を非常に簡単に実装できます。

Swiper は、携帯電話やタブレットなどのモバイル端末向けに設計された、純粋な JavaScript で構築されたスライド特殊効果プラグインです。タッチスクリーンのフォーカス画像、タッチスクリーンのタブ切り替え、タッチスクリーンのマルチ画像切り替えなどの一般的な効果を実現できます。使い方は超簡単。さっそくチュートリアルを見ていきましょう。

1. まずプラグインをロードします。必要なファイルは swiper.min.js ファイルと swiper.min.css ファイルです。 Swiper ファイルをダウンロードするか、CDN を使用することができます。

 <!-- リンクスワイパー-->
  <link rel="スタイルシート" href="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.0.2/css/swiper.min.css" rel="外部 nofollow" >
  <script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.0.2/js/swiper.min.js"></script>

Swiperの中国語ウェブサイトのファイルを直接インポートしないでください。

<script src="http://www.swiper.com.cn/dist/js/swiper.min.js"></script>

<link href="http://www.swiper.com.cn/dist/css/swiper.min.css" rel="外部nofollow" />

2. CSSスタイル

 <スタイル>
    .スワイパーコンテナ{
    //ここで幅と高さを設定できます width: 50%;
      高さ: 50%;
    }
    .スワイパースライド{
      テキスト配置: 中央;
      フォントサイズ: 18px;
      背景: #fff;
      /* スライドのテキストを垂直に中央揃えにする */
      ディスプレイ: フレックス;
      -webkit-box-pack: 中央;
      -ms-flex-pack: 中央;
      中央揃え
      コンテンツの中央揃え: 中央;
      -webkit-box-align: 中央;
      -ms-flex-align: 中央;
      -webkit-align-items: 中央;
      アイテムの位置を中央揃えにします。
    }
    画像{
      幅:250px;
    }
  </スタイル>

3. HTML

<div class="スワイパーコンテナ">
  <div class="スワイパーラッパー">
    <div class="swiper-slide"><img src="img/000.jpg" alt=""></div>
    <div class="swiper-slide"><img src="img/001.jpg" alt=""></div>
    <div class="swiper-slide"><img src="img/002.jpg" alt=""></div>
    <div class="swiper-slide"><img src="img/003.jpg" alt=""></div>
    <div class="swiper-slide"><img src="img/004.jpg" alt=""></div>
    //画像を追加</div>
  <!-- ページ区切りを追加 -->
  <div class="swiper-pagination"></div>
  <!-- 矢印を追加 -->
  <div class="スワイパーボタン-次へ"></div>
  <div class="スワイパーボタン前"></div>
</div>

4. JavaScript

<スクリプト>
  var swiper = new Swiper('.swiper-container', {
    スペース: 30,
    centeredSlides: true、
    自動再生:
      遅延: 2500、
      対話時に無効にする: false、
    },
    ページネーション:
      el: '.swiper-pagination',
      クリック可能: true、
    },
    ナビゲーション:
      nextEl: '.swiper-button-next',
      前へ: '.swiper-button-prev',
    },
  });
</スクリプト>

レンダリング

画像を置き換えて、画像とカルーセルのサイズを変更するだけで、簡単に素晴らしいカルーセルを作成できます。簡単ですよね?

補足:スワイパーを使用して均一でシームレスな回転を実現する方法

1. プロパティを設定する

フリーモード:true、

自動再生:

遅延:0

}

2. スタイルを変更または上書きする

.swiper-container-free-mode>.swiper-wrapper {
  -webkit-transition-timing-function: linear; /*以前はease-outでした*/
  -moz-transition-timing-function: 線形;
  -ms-遷移タイミング関数: 線形;
  -o-遷移タイミング関数: 線形;
  遷移タイミング関数: 線形;
  マージン: 0 自動;
}

補足 2: モバイルデバイスにおける swiper.js の落とし穴

ステップ:

1. カレンダーのレンダリング: カレンダーは自分で開発しました (注: 1. 現在の日付を取得します。2. 月に何日あるか。3. 閏月。4. 各月の 1 日は何曜日か。...)

2. プロジェクトは比較的最近のものであるため、スライド効果を実現するために swiper.js コントロールが使用されています。

質問:

1. 最初に遭遇したのは、UC、Baidu、その他のブラウザを含む iOS でのテストでは問題がなかったのですが、Meizu と Huawei の電話でテストすると切り替えができないという問題がありました。

解決策: 互換性の問題であると考え、swiper.js の公式ドキュメントを探しました。当時は swiper.js のみを参照しており、swiper.css と swiper.animate.js を紹介していなかったためです。

再導入後、問題は解決し、問題は解決しました。

<link rel="スタイルシート" href="../../styles/library/swiper.min.css" rel="外部nofollow" />
<script src="../../scripts/common/swiper-3.3.1.min.js"></script>
<script src="../../scripts/common/swiper.animate.min.js"></script> 

2. 必要なファイルをインポートした後、iOS と Android のブラウザには問題がないことがわかりました。ただし、Android アプリには問題があり、切り替えがスムーズではありませんでした。このとき、Baidu でも検索しましたが、解決策は見つかりませんでした。最終的には、プロパティとメソッドの解決策を確認するために公式ドキュメントを読む必要がありました。

 // スライドショー - 左右にスライドして切り替えます var mySwiper = new Swiper('.swiper-container',{
    ページネーション: '.pagination',
    ループ:false、
    モード: '水平'、
    フリーモード:false、
    タッチ比率:0.5,
    ロングスワイプ比率:0.1、
    閾値:50、
    followFinger:false、
    observer: true, // スワイパー自体またはその子要素を変更すると、スワイパーが自動的に初期化されます
    observeParents: true, //スワイパーの親要素を変更すると、スワイパーを自動的に初期化します
    onSlideChangeEnd:function(swiper){ // スライドが終了すると、月と日が同期して左右に切り替わります。changeMonth();
    }
  });

注: 初期化中に追加されたプロパティがわからない場合は、公式ドキュメントを確認してください。

注意: 私は swper.js バージョン 3xxx 以上を使用していますが、各バージョン間の違いはかなり大きいです。

Swiper.jsプラグインを使用してカルーセル画像を簡単に実装する方法についての記事はこれで終わりです。Swiper.jsカルーセル画像の詳細については、123WORDPRESS.COMの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • js でシームレスなカルーセルプラグインのカプセル化を実現
  • jsカルーセルのプラグインカプセル化の詳細な説明
  • ネイティブ JS カルーセル プラグイン
  • カルーセルの完全なコードを実装するためのjs
  • ネイティブ js でカルーセルを実装するためのサンプル コード
  • 携帯電話のスライドスイッチカルーセル画像の例をサポートする効果を実現するためのjs
  • JS カルーセル図の実装の簡単なコード
  • js で左右のボタンをクリックして画像を再生する
  • JSは左右のシームレスなカルーセルコードを実装します
  • jsネイティブカルーセルプラグインの制作

<<:  MySQL での coalesce() の使用に関するヒントのまとめ

>>:  Docker で Docker0 ブリッジのデフォルトのネットワーク セグメントを変更する方法

推薦する

MySQLデータベースの圧縮バージョンのインストールと設定に関する詳細なチュートリアル

目次1. MySQLをダウンロードする2. 圧縮パッケージを解凍する3. MySQLを初期化する4....

HTML の doctype とエンコーディングに関する簡単な説明

文書タイプDoctype は、指示を解析するためにどのバージョンの HTML を使用するかをブラウザ...

MySQL ツリー構造テーブルの設計と最適化に関する簡単な説明

序文多くの管理・オフィスシステムでは、ツリー構造がいたるところで見られます。たとえば、「部門」や「機...

CSSを使用して中央に固定された2つの列と適応型列を実現する方法

1. 絶対位置とマージンを使用するこの方法の原則は、左側と右側をドキュメントの流れから外れるように配...

Web デザインにおける HTML フォーマットと長いファイルに関するヒント

<br />関連記事: Web コンテンツ ページ作成に関する 9 つの実用的な提案、W...

Docker イメージの作成、アップロード、プル、およびデプロイ操作 (Alibaba Cloud を使用)

学習プロセス中にプッシュ イメージが常にタイムアウトすることがわかったため、Alibaba Clou...

Alibaba Cloud Centos6.X でメールを送信する際に発生するさまざまな問題

序文: Webサービスを提供するために、Alibabaクラウドホストを新しくインストールしました。す...

js 配列エントリ() 反復メソッドを取得する

目次1.entires() メソッドの詳細な構文2.entires() メソッドの一般的な使用法と注...

JavaScript の手ぶれ補正とスロットリングの詳細な説明

目次デバウンススロットル要約するデバウンス定義: スクロール イベントなど、短時間に連続してトリガー...

CSS の vertical-align プロパティとベースラインの問題に関する深い理解

vertical-align属性は、主にインライン要素の配置を変更するために使用されます。インライン...

MySQLの保存時間の不一致の問題を解決する

Java を使用してシステム時間を取得し、それを MySQL データベースに保存した後、時間タイプが...

MySQL の大文字と小文字の区別に関する注意

目次MySQLの大文字と小文字の区別はパラメータによって制御されますMySQLの大文字と小文字の区別...

Centos7 での Rsync+crontab 定期同期バックアップ

最近、社内の重要なサーバデータを定期的にストレージにバックアップし、ついでにメモしておきたい以前、W...

Windows 10 での MySQL 5.7.21 winx64 のインストールと設定方法のグラフィック チュートリアル

mysql 5.7.21 winx64 のインストールと設定方法: MySQLのコミュニティバージョ...

JavaScript のマイクロタスクとマクロタスクの説明

序文: js はシングルスレッド言語なので、非同期にすることは不可能です。しかし、js のホスト環境...