JavaScript でカルーセル効果を実装する

JavaScript でカルーセル効果を実装する

この記事では、カルーセルの効果を実現するためのJavaScriptの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

実装コード:

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
    <スタイル>
        * {
            マージン: 0;
            パディング: 0;
        }
        ul {
            リストスタイル: なし;
        }
        #箱 {
            マージン: 30px 自動;
            幅: 590ピクセル;
            高さ: 340ピクセル;
            位置: 相対的;
        }
 
        #バナーリスト > li {
            位置: 絶対;
            左: 0;
            右: 0;
            不透明度: 0;
            /*トランジションアニメーション*/
            遷移: 不透明度 2 秒、緩和;
        }
 
        #左、#右 {
            幅: 30ピクセル;
            高さ: 60px;
            テキスト配置: 中央;
            行の高さ: 60px;
            フォントサイズ: 24px;
            色: rgba(255,255,255,0.7);
            背景色: rgba(0,0,0,0.3);
            位置: 絶対;
            上位: 50%;
            上マージン: -30px;
            zインデックス: 3;
        }
 
        #右 {
            右: 0;
        }
 
        #タグリスト{
            幅: 130ピクセル;
            位置: 絶対;
            左: 50%;
            下: 8px;
            左マージン: -55px;
        }
 
        #タグリスト > li {
            フロート: 左;
            幅: 18px;
            高さ: 18px;
            マージン: 4px;
            テキスト配置: 中央;
            行の高さ: 18px;
            フォントサイズ: 13px;
            背景色: 白;
            境界線の半径: 9px;
            /*トランジションアニメーション*/
            遷移: 背景色 1s イージー;
        }
    </スタイル>
    <スクリプト>
        window.onload = 関数 (){
            //tag_listとサークルリストを取得する
            var tag_list = document.getElementById("タグリスト");
            var list = tag_list.children;
 
            //1. ul(banner_list)とすべてのliを取得する
            バナーリストを document.getElementById("バナーリスト");
            以下のようにbannerLiをbanner_list.childrenとします。
 
            //2. デフォルトで最初のバナーを表示する
            バナーLi[0].className = "現在のバナー"
            バナーLi[0].style.opacity = 1
            list[0].style.backgroundColor = "赤"
 
            //3. インデックスは 0 から始まり、デフォルトでは最初のものが表示されます。
            //count は現在表示されているページのインデックスを示します。let count = 0;
 
            //4. > をクリックして右に切り替えます var right = document.getElementById("right");
            right.onclick = 関数 (){
                //4.1 まず現在のページを非表示にするbannerLi[count].className = ""
                バナーLi[count].style.opacity = 0
                list[count].style.backgroundColor = "白"
 
                //4.2. ページ番号が1ずつ増加し、6ページ目(インデックス=5)に達したら、最初のページ(インデックス=0)に切り替えます。
                (++count == 5)の場合{
                    カウント = 0
                }
 
                //4.3 表示する現在のページ番号を設定するbannerLi[count].className = "current-banner"
                バナーLi[count].style.opacity = 1
                list[count].style.backgroundColor = "赤"
            }
 
            // right と同様に、条件を変更します var left = document.getElementById("left");
            left.onclick = 関数 (){
                //4.1 まず現在のページを非表示にするbannerLi[count].className = ""
                バナーLi[count].style.opacity = 0
                list[count].style.backgroundColor = "白"
 
                //4.2. ページ番号が 1 ずつ減少し、0 ページ目 (インデックス = -1) に達すると、5 ページ目 (インデックス = 4) に切り替わります。
                (--count == -1)の場合{
                    カウント = 4
                }
 
                //4.3 表示する現在のページ番号を設定するbannerLi[count].className = "current-banner"
                バナーLi[count].style.opacity = 1
                list[count].style.backgroundColor = "赤"
            }
 
            //マウスイベントをすべての円にバインドします for (let i = 0; i < list.length; i++) {
                list[i].onmouseenter = 関数 (){
                    // 円のスタイルを設定します list[count].style.backgroundColor = "white"
                    list[i].style.backgroundColor = "赤"
                    //バナー画像のスタイルを設定するbannerLi[count].className = ""
                    バナーLi[count].style.opacity = 0
                    バナーLi[i].className = "現在のバナー"
                    バナーLi[i].style.opacity = 1
                    //count を i に設定する
                    カウント = i
                }
            }
        }
    </スクリプト>
</head>
<本文>
    <div id="ボックス">
        <ul id="バナーリスト">
            <li class="current-banner"><img src="banner-img/11.jpg" alt=""></li>
            <li><img src="banner-img/22.jpg" alt=""></li>
            <li><img src="banner-img/33.jpg" alt=""></li>
            <li><img src="banner-img/44.jpg" alt=""></li>
            <li><img src="banner-img/55.jpg" alt=""></li>
        </ul>
        <span id="left">&lt;</span>
        <span id="right">&gt;</span>
        <div>
            <ul id="タグリスト">
                <li>1</li>
                <li>2</li>
                <li>3</li>
                <li>4</li>
                <li>5</li>
            </ul>
        </div>
    </div>
</本文>
</html>

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

以下もご興味があるかもしれません:
  • シンプルなカルーセル チャートを実装するための JavaScript の最も完全なコード分析 (ES5)
  • jsを使用してカルーセル効果を実現する
  • シンプルなカルーセル効果を実現するネイティブ js
  • JavaScript を使用してカルーセル効果を実装する
  • カルーセルの完全なコードを実装するためのjs
  • ネイティブ js でカルーセルを実装するためのサンプル コード
  • 携帯電話のスライドスイッチカルーセル画像の例をサポートする効果を実現するためのjs
  • JS カルーセル図の実装の簡単なコード
  • js で左右のボタンをクリックして画像を再生する
  • シンプルなカルーセルの最も完全なコード分析を実装するJavaScript(ES6オブジェクト指向)

<<:  mysql 8.0.19 winx64.zip インストール チュートリアル

>>:  Windows と Linux 間のリモート デスクトップ接続

推薦する

HTMLタグオーバーフロー処理アプリケーション

CSSを使用してスクロールバーを変更する1.コンテンツがオーバーフローした場合のオーバーフロー設定水...

Nginx 設定場所のマッチング優先順位の簡単な分析

序文Nginx 構成のサーバー ブロック内の場所は、リクエスト URI を一致させるために使用され、...

Linux で Spring Boot プロジェクトを開始および停止するためのスクリプトの例

Springboot プロジェクトを開始するには、次の 3 つの方法があります。 1. メインメソッ...

私が良いと思うクールなデザインサイトをいくつかまとめてみました。

ウェブサイトをデザインするにはインスピレーションが必要です。良いインスピレーションを得るには、より多...

JavaScript で 24 以上の配列メソッドを手動で実装する

目次1. トラバーサルクラス1. 各2. 地図3. すべての4. いくつか5. フィルター6. 減ら...

「いいね!」機能では MySQL と Redis のどちらを使用すればよいでしょうか?

目次1. 初心者が陥りがちな間違い2. Iteratorのremove()メソッドを使用する3. f...

Vue 要素と Nuxt の使用に関するヒントを共有する

1. 要素時間選択提出フォーマット変換例えば 2018年9月7日金曜日 00:00:00 GMT+0...

Vueで親子コンポーネント通信を実装する方法

目次1. 親コンポーネントと子コンポーネントの関係2. 小道具3. $エミット4. $親V. 結論 ...

要素フォーム検証で検証プロンプトをクリアする方法

目次問題のシナリオ:解決: 1. フィールドを個別にチェックする2. フォームフィールドの下のフィー...

CSS セレクターの重みの理解(個人テスト)

コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...

MySQLデータベースを別のマシンに移行する方法の詳細な説明

1. まず、移行サーバー上のデータ ファイルを見つけます。MySQL 5.7 とデフォルトのインスト...

HTML Webページ作成チュートリアル iframeタグを慎重に使用してください

iframe を使用すると、他の Web サイトのページを簡単に呼び出すことができますが、注意して使...

ルート権限なしでログインするためのDockerソリューション

docker コマンドを初めて使用する場合、権限の問題を確認するメッセージが表示されます。 unix...

jsはショッピングカートの加算と減算、価格計算を実装します

この記事の例では、ショッピングカートの加算と減算、価格計算を実装するためのjsの具体的なコードを共有...

Linux 上で Python3.6 をコンパイルしてインストールするための詳細なチュートリアル

1. まず、公式ウェブサイト https://www.python.org/downloads/so...