jQueryはネストされたタブ機能を実装します

jQueryはネストされたタブ機能を実装します

この記事では、ネストされたタブ機能を実装するためのjQueryの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。

知識ポイントの要約:

1.siblings(): 兄弟要素。一致するセット内の各要素の兄弟を取得します。セレクタによるフィルタリングはオプションです。

2.removeClass(): メソッドは、選択した要素から 1 つ以上のクラスを削除します。

3.addClass(): メソッドは、選択した要素に 1 つ以上のクラスを追加します。

4.eq(): このメソッドは、一致した要素のセットを指定されたインデックスの要素に減らします。

5.hide() と show(): 特殊効果を非表示および表示します。

6.parent(): 現在の一致した要素セット内の各要素の親要素を取得します。フィルタリングにセレクターを使用するかどうかはオプションです。

7.find(): このメソッドは、セレクター、jQuery オブジェクト、または要素でフィルタリングして、現在の要素セット内の各要素の子孫を取得します。

8.index(): このメソッドは、指定された要素の、他の指定された要素に対する相対的なインデックス位置を返します。

1.html

<本文>
<div id="div1">
 <input class="active" type="button" value="tab1" />
    <input type="button" value="tab2" />
    <input type="button" value="tab3" />
    <input type="button" value="tab4" />
    <input type="button" value="tab5" />
</div>
<div class="box1" style="display:block;">
 <div class="box2" style="display:block;">
     タブ1-1
    </div>
    <div class="box2">
     タブ1-2
    </div>
    <div class="box2">
     タブ1-3
    </div>
    <input class="active" type="button" value="tab1-1" />
    <input type="button" value="tab1-2" />
    <input type="button" value="tab1-3" />
</div>
<div class="box1">
 <div class="box2" style="display:block;">
     タブ2-1
    </div>
    <div class="box2">
     タブ2-2
    </div>
    <div class="box2">
     タブ2-3
    </div>
    <input class="active" type="button" value="tab2-1" />
    <input type="button" value="tab2-2" />
    <input type="button" value="tab2-3" />
</div>
<div class="box1">
 <div class="box2" style="display:block;">
     タブ3-1
    </div>
    <div class="box2">
     タブ3-2
    </div>
    <div class="box2">
     タブ3-3
    </div>
    <input class="active" type="button" value="tab3-1" />
    <input type="button" value="tab3-2" />
    <input type="button" value="tab3-3" />
</div>
<div class="box1">
 <div class="box2" style="display:block;">
     タブ4-1
    </div>
    <div class="box2">
     タブ4-2
    </div>
    <div class="box2">
     タブ4-3
    </div>
    <input class="active" type="button" value="tab4-1" />
    <input type="button" value="tab4-2" />
    <input type="button" value="tab4-3" />
</div>
<div class="box1">
 <div class="box2" style="display:block;">
     タブ5-1
    </div>
    <div class="box2">
     タブ5-2
    </div>
    <div class="box2">
     タブ5-3
    </div>
    <input class="active" type="button" value="tab5-1" />
    <input type="button" value="tab5-2" />
    <input type="button" value="tab5-3" />
</div>
</本文>

2. jQクエリ

 <script src="js/js.js"></script>
    <スクリプト>
        $('#div1>:button').on('click', 関数(){
            $(this).addClass('active').siblings().removeClass('active');
 
            // 赤いボタンのクリックされたボタンの添え字 let i = $(this).index();
            $('.box1').eq(i).show().siblings('.box1').hide();
 
        });
 
        $('.box1>:button').on('click',function(){
            $(this).addClass('active').siblings('input').removeClass('active');
            // クリックされたボタンと同じ世代の 3 つの入力のインデックス let i = $(this).parent().find('input').index(this);
            $(this).parent().find('div').eq(i).show().siblings('div').hide();
        })

実行結果:

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

以下もご興味があるかもしれません:
  • jQueryはネストされた機能を持つタブを実装します
  • JavaScript は多層カラータブネストを実装します
  • jQueryはタブネスト効果を実現します

<<:  Linux whatisコマンドの使い方

>>:  経験豊富な人が、プロフェッショナルで標準化されたMySQL起動スクリプトの開発方法を紹介します。

推薦する

Webpack4プラグインの実装原理についての簡単な説明

目次序文知る練習すれば完璧になる序文wabpack では、ローダーの他にプラグインがコア機能です。プ...

フロントエンド開発一般マニュアル(ツール、Webサイト、経験などを含む)

今日は何もすることがなかったので、いくつかのツール(オンラインとクライアント)、よく使用する URL...

Mac で MySQL バージョン 5.6 のパスワードを設定する方法

MySQLはインストール時に設定できますが、それより低いバージョンは設定できないようで、インストール...

CSS3で跳ねるボールのアニメーションを実現

私は通常、大手ウェブサイトの特別ページや製品リリースページを訪問するのが好きです。なぜなら、たくさん...

CSS3 のテキストとフォントの新しい設定

テキストシャドウテキストシャドウ: 水平オフセット 垂直オフセット ぼかし色互換性: IE10+ &...

MySQL 5.7.30 のインストールとアップグレードの問題に関する詳細なチュートリアル

くさびコンピュータにインストールされている MySQL のバージョンが比較的古く、おそらくバージョン...

MySQLインデックスマージの使い方

インデックスのマージは、MySQL が最下層で提供するインテリジェントなアルゴリズムです。インデック...

VueはElement el-uploadコンポーネントを使用してピットに足を踏み入れます

目次1. 基本的な使い方2. 画像量の制御3. 画像形式の制限/複数の画像を選択可能補足: vueプ...

素晴らしいCSS属性MASKの詳しい説明

この記事では、CSS の非常に興味深い属性マスクを紹介します。名前が示すように、マスクはマスクと翻訳...

HTML ページの部分更新の実装コード

イベント応答の更新: 要求されたときのみ更新1. JS HTML DOM または jQuery を介...

Dockerの匿名マウントと名前付きマウントの具体的な使用法

目次データ量匿名マウントと名前付きマウントデータボリュームの場所データ量匿名マウントと名前付きマウン...

高性能ウェブサイトの最適化ガイド

パフォーマンスの黄金律:エンドユーザーの応答時間のわずか 10% ~ 20% が HTML ドキュメ...

Vue3のレスポンシブ原則の詳細な説明

目次Vue2 レスポンシブ原則のレビューVue3 レスポンシブ原則の分析ネストされたオブジェクトの応...

JSはUUIDとNanoIDというユニークなIDメソッドを生成します

目次1. NanoIDがUUIDに取って代わる理由2. jsを生成する方法3. ナノID方式序文:ユ...

UbuntuでOpenCVをコンパイルしてインストールする方法

opencv2 の簡単なインストール: conda インストール --channel https:/...