jQuery で呼吸カルーセル効果を実現

jQuery で呼吸カルーセル効果を実現

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

おそらく次のような考えでしょう:

ブリージング カルーセルは、画像がフェードインおよびフェードアウトするカルーセルです。
ul を div に格納します (相対位置を設定します)。li には float: left は必要なく、絶対位置を設定するだけです。左:0、上:0。
このとき、すべての写真の後に false 0 を追加する必要はありません。
div には、左ボタンと右ボタン、およびその下の小さなドットも含まれます。これらは、絶対位置指定によって適切な位置に配置できます。
インデックスを 0 に設定します。右ボタンをクリックすると、現在の画像がフェードアウトし、インデックス ++ になります。画像が最後の場合、インデックスは 0 に設定され、新しい画像がフェードインします。下の小さな点は色に対応しています。
左ボタンのアイデアもほぼ同じです。
下の小さな画像をクリックした際に、クリックしたインデックスが現在表示されているインデックスと同じであれば、何もする必要はありません。
他のドットをクリックすると、古い画像がフェードアウトし、現在のドットのインデックスがグローバル変数インデックスに割り当てられ、新しい画像がフェードインします。
クリックしたドットの色は変わりますが、その兄弟要素は元の色のままです。

プログラム:

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
</head>
<スタイル>
    *{
        マージン:0;
        パディング:0;
    }
    。大きい{
        幅:560ピクセル;
        高さ:300px;
        位置: 相対的;
        マージン:200px 自動;
        border:10px 赤一色;
    }
    .big .move{
        幅:5600ピクセル;
        高さ:300px;
        位置: 絶対;
        左:0;
        トップ:0;
    }
    .big .move li{
        /*float: 左;*/
        リストスタイル: なし;
        表示: なし;
        位置: 絶対;
        トップ:0;
        左:0;
    }
    .big ul .first{
        表示: ブロック;
    }
    画像{
        幅:560ピクセル;
        高さ:300px;
    }

    .btn div{
        幅:40px;
        高さ:60px;
        背景: 赤;
        位置: 絶対;
        上位:50%;
        上マージン:-30px;
    }
    .rightbtn{
        右:0;
    }

    。丸{
        位置: 絶対;
        左:0px;
        下:0px;
        幅:200px;
        高さ:30px;

    }
    .circle ul{
        /*オーバーフロー: 非表示;*/
        リストスタイル: なし;
        フロート: 左;
    }
    .circleUl li{
        背景: 白;
        フロート: 左;
        右マージン:10px;

        幅:20px;
        高さ:20px;
        境界線の半径:50%;
    }


</スタイル>
<本文>
<div class="big">

    <ul class="move">
        <li class="first"> <img src="img/0.jpg" alt=""> </li>
        <li> <img src="img/1.jpg" alt=""> </li>
        <li> <img src="img/2.jpg" alt=""> </li>
        <li> <img src="img/3.jpg" alt=""> </li>
    </ul>

    <div class="btn">
        <div class="leftbtn"> < </div>
        <div class="rightbtn"> > </div>
    </div>

    <div class="circle">
        <ul class="circleUl">
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
    </div>

</div>


<script src="js/jquery-1.12.3.min.js"> </script>

<スクリプト>
// 最初のドットを赤に設定します $(".circleUl li").eq(0).css("background","re​​d");

    var インデックス = 0;
    $(".leftbtn").click(関数(){
// 古い画像をフェードアウトします $(".move li").eq(index).fadeOut(400);
        索引 - ;
      if(インデックス<0){
          インデックス = 3;
      }
// 新しい画像がフェードインします $(".move li").eq(index).fadeIn(400);
// インデックスに対応する小さなドットの色を変更します$(".circleUl li").eq(index).css("background","re​​d").siblings().css("background","white");
    });


    $(".rightbtn").click(関数(){
        $(".move li").eq(index).fadeOut(400);
        インデックス++;
        コンソールログ(インデックス);
        if(インデックス == 4){
            インデックス = 0;
        }
        $(".move li").eq(index).fadeIn(400);
        $(".circleUl li").eq(index).css("background","re​​d").siblings().css("background","white");
    });


// 小さなドットのクリックイベント $(".circleUl li").click(function(){
// 最初の画像がすでに表示されているときに最初のドットをもう一度クリックしても何も起こりません if(index == $(this).index()) return;

// 古い画像がフェードアウトします $(".move li").eq(index).fadeOut(400);

// ドットをクリックし、そのドットのインデックスをグローバル変数インデックスに割り当てます (グローバル変数インデックスを更新します)
        インデックス = $(this).index();

        // 新しい画像がフェードインします $(".move li").eq(index).fadeIn(400);
// 小さなドットの色が変わります$(this).css("background","re​​d").siblings().css("background","white");



    })
</スクリプト>

</本文>
</html>

実行結果:

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

以下もご興味があるかもしれません:
  • jQuery は呼吸カルーセルを実装します
  • ブリージングカルーセルを実装するネイティブJS

<<:  XHTML 入門チュートリアル: XHTML Web ページ画像アプリケーション

>>:  Docker に MySQL と Redis をインストールする方法

推薦する

MySql でメモリ使用量を削減する方法の詳細な説明

序文デフォルトでは、MySQL はデータベース クエリ データをキャッシュするために大きなメモリ ブ...

Vue3 テーブルコンポーネントの使用

目次1. Antデザインビュー1. 公式ウェブサイトアドレス2. 使い方3.電子書籍テーブルを表示す...

さまざまなネットワーク画像形式におけるPNGの利点の詳細な説明

BMP は、ハードウェア デバイスに依存せず、広く使用されている画像ファイル形式です。ビットマップ保...

mysql 8.0.16 winx64 および Linux でルート ユーザーのパスワードを変更する方法

データベースへの接続などの基本的な操作はご自身で行ってください。この記事ではパスワードの変更方法を中...

Centos7 への MySQL8 のインストールチュートリアル

MySQL 8 の新機能: MySQL をバージョン 5.x から 8.x に直接アップグレードする...

vue3 で vue-router を使用するための完全な手順

序文ルーティングの管理は、ほとんどのシングルページ アプリケーションにとって不可欠な機能です。 Vu...

VMware ESXi 6.0 および仮想マシンのインストール チュートリアルの展開 (画像とテキスト)

社内には以前からアイドル状態だった、構成の整ったサーバーがあったので、EXSI 6.0 を使って複数...

JavaScript 配列のマージのケーススタディ

方法1: var a = [1,2,3]; var b = [4,5] b を連結します。 コンソー...

CSS 要素で計算されたスタイルを取得します (カスケード/最終スタイル後)

CSS 要素内の計算されたスタイル (つまり、カスケード後の最終的なスタイル) を取得するには、W3...

dockerでpdflatex環境を設定する方法

技術的背景Latex は文書作成、特に記事作成には欠かせないツールであり、必須のテキスト組版ツールで...

JavaScript を使用してテーブル情報を追加および削除する

JavaScript 入門JavaScript は軽量なインタープリタ型の Web 開発言語です。言...

Linux yum パッケージ管理方法

導入yum (Yellow dog Updater, Modified) は、Fedora、RedH...

JavaScript での HTML キャンバスとページ ストレージ テクノロジの使用に関する詳細な説明

目次1. JavaScriptはHTMLでキャンバスを使用する2. ページストレージ技術1. Jav...

jsはショッピングサイトの虫眼鏡機能を実現します

この記事では、ショッピングサイトの虫眼鏡機能を実現するためのjsの具体的なコードを紹介します。具体的...

HTML テーブル マークアップ チュートリアル (6): 暗い境界線の色属性 BORDERCOLORDARK

表では、右下の境界線の色を個別に定義したり、セルの左上の境界線の色を定義したりできます。これら 2 ...