カルーセル効果を実現するためのネイティブJavaScript+CSS

カルーセル効果を実現するためのネイティブJavaScript+CSS

この記事では、参考までに、カルーセル効果の具体的なコードをJavaScript+CSSを使用して実装します。具体的な内容は次のとおりです。

1.html

<ul id="バナー" ></ul>

2.css

ul{
    リストスタイル:なし;
    位置: 絶対;
    パディング: 0;
    左: 0;
    右: 0;
    下部: 0;
    トップ:0;
    マージン:自動;
    幅: 800ピクセル;
    高さ:200px;
}

3.js

//カルーセルエクスポート関数を生成するgenerateBanner(){
  sz = new Array() とします。
  cur_ul = document.getElementById('バナー');
  const 推奨 = this.recommends;

  タイマーをsetInterval(getNextLi, 3000);に設定します。

  //カルーセル画像を生成する
  (i = 0 とします; i < 推奨長さ; i++) {
    //タグを生成する let cur_li = document.createElement("li");
    cur_img = document.createElement("img"); とします。
    //属性を追加 cur_img.src = recommends[i].pic;
    //スタイルを追加 cur_li.style.position = 'absolute';
    cur_li.style.left = '0px';
    cur_li.style.transitionDuration = '0.4s';
    cur_li.style.cursor="ポインター";

    //ul 合計幅 800、完全な 400px が 1 つと不完全な 200px が 2 つ表示
    cur_img.style.width = '125px';
    cur_img.style.height = "100px";

    //子要素を追加します cur_li.appendChild(cur_img);
    cur_ul.appendChild(cur_li);

    //操作を簡単にするためにすべてを配列に入れる sz.push(cur_li);
  }

  // 2 つのアイコンを生成します generateAngleIcons();

  //最後の3つの画像を使用して表示します。let len ​​= sz.length - 1;
  //最後から3番目 showThreeLi();

  //次のli表示を取得し、最初のものを配列の末尾に配置します。関数getNextLi() {
    li = sz[0];
    sz = sz.スライス(1);
    sz.push(li);

    //すべてのliが復元されます for (let i = 0; i < sz.length; i++) {
      //すべてのliは元のサイズに復元されます sz[i].style.transform = "scale(1)";
      sz[i].style.left = "0px";
      //liは小さいものから大きいものまでカバーします sz[i].style.zIndex = i;

      //すべて非表示 sz[i].style.display = "none";
    }
    //最後の3枚の写真を表示します。showThreeLi();

  }

  //最後の3枚の写真を表示する function showThreeLi() {
    sz[len - 2].style.left = "0px";
    //最後から2番目の画像 sz[len - 1].style.left = "120px";
    sz[長さ - 1].style.zIndex = 100;
    sz[len - 1].style.transform = "scale(1.3)";
    // 最後の sz[len].style.left = "230px";

    //ディスプレイ sz[len - 2].style.display = "block";
    sz[len - 1].style.display = "ブロック";
    sz[len].style.display = "ブロック";
  }


  関数generateAngleIcons(){
    const icons = 新しい配列();

    (i = 0; i < 2; i++ とします) {
      //アイコンを生成する
      cur_li = document.createElement("li"); とします。
      //スタイルを追加 cur_li.style.position = 'absolute';
      cur_li.style.top = '0px';
      cur_li.style.bottom = '0px';
      cur_li.style.margin = "自動";
      cur_li.style.paddingTop="100px";
      cur_li.style.paddingBottom="100px";
      cur_li.style.zIndex = 20;
      アイコンをプッシュします(cur_li);
    }

    アイコン[0].style.left = '0px';
    アイコン[1].style.right = '0px';
    icons[0].innerHTML = '<i class="angle left icon"></i>'
    icons[1].innerHTML = '<i class="angle right icon"></i>'
    cur_ul.appendChild(アイコン[1]);
    cur_ul.appendChild(アイコン[0]);
  }
}

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • モバイル カルーセルを実装するための JavaScript + CSS + HTML (ソース コードを含む)
  • スライドショーカルーセルを実装するための JS+CSS3
  • 3D カッティングカルーセルを実装するための JS+CSS
  • html+js+css を使用してページ カルーセル効果を実現する (例の説明)
  • ネイティブ js でカルーセルを実装するためのサンプル コード
  • カルーセルの完全なコードを実装するためのjs
  • 携帯電話のスライドスイッチカルーセル画像の例をサポートする効果を実現するためのjs
  • JS カルーセル図の実装の簡単なコード
  • js で左右のボタンをクリックして画像を再生する
  • カードカルーセル効果を実現するための js+css

<<:  Ubuntu LinuxにOracle Java 14をインストールする方法

>>:  MySQL トリガーの追加、削除、変更、クエリ操作の例

推薦する

React+TS を使用したシンプルな Jira プロジェクトを実装するためのベスト プラクティス

トレーニングのための一連のプロジェクト反応+ts内容は少ないですが、フックのカプセル化、ts ジェネ...

Vue マルチ選択リスト コンポーネントの詳細な説明

マルチ選択は、すべてのオプションを一覧表示し、ユーザーが Ctrl/Shift キーを使用して複数選...

MySQL sql_modeクエリと設定の詳細な説明

1. SQLを実行して表示する @@session.sql_mode を選択します。 グローバルレベ...

MySQL の最初のインストールが成功した後にパスワードを初期化する手順

ファイルをディレクトリに解凍しますこれは解凍後のディレクトリですmy.iniファイルを入力しますダブ...

Vue プロジェクトに ECharts を導入する

目次1. インストール2. はじめに3. 使用4. 必要に応じてEChartsチャートとコンポーネン...

MySQLデータベース最適化技術の簡単な紹介

成熟したデータベース アーキテクチャは、最初から高可用性、高スケーラビリティなどの機能を備えて設計さ...

MySQL での r2dbc の使用に関する詳細な理解

導入MySQL は、私たちが日常業務で使用する非常に一般的なデータベースです。MySQL は現在 O...

URLに基​​づいてリクエストを転送するnginxの実装の実践経験

序文これは fastdfs を使用してイントラネット外部に展開された分散ファイルシステムであるためで...

CSS における @ の使用法の概要 (例と説明付き)

@ ルールは、CSS の実行または動作に関する指示を提供する宣言です。各宣言は @ で始まり、その...

MySQL 8.0.16 Win10 zip バージョンのインストールと設定のグラフィック チュートリアル

この記事では、MySQL 8.0.16 Win10 zip版のインストールと設定のグラフィックチュー...

VPSサーバーでよく使われるパフォーマンステストスクリプトの概要

これは、VPS サーバー用の一般的なワンクリック パフォーマンス テスト スクリプトです。マシンの構...

Linux の Centos7 に Mysql5.7.19 をインストールする詳細なチュートリアル

1. MySQLをダウンロードするURL: https://dev.mysql.com/downlo...

露滴アニメーション効果を実装するための Three.js サンプル コード

序文みなさんこんにちは。CSS ウィザードの alphardex です。この記事では、three.j...

Alibaba Cloud CentOS7 サーバーの nginx 構成と FAQ の分析

序文:この記事は、jackyzm のブログ https://www.cnblogs.com/jack...

MySQLクエリステートメントの簡単な操作例

この記事では、例を使用して、MySQL クエリ ステートメントの簡単な操作を説明します。ご参考までに...