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起動スクリプトの開発方法を紹介します。

推薦する

MySQL innodb B+ツリーの高さを取得する方法

序文MySQL の InnoDB エンジンがインデックスの保存に B+tree を使用する理由は、デ...

Linuxのtopコマンド出力の詳細な説明

序文皆さんは Linux で top コマンドを使ったことがあると思います。私は Linux に触れ...

jQuery プロジェクトで重複送信を防ぐ方法

新しいプロジェクトでは、axios によって重複した送信を防ぐことができますが、古いプロジェクト (...

Linux での MySQL 8.0.11 のインストールに関するチュートリアル

1. 公式サイトにアクセスしてインストールパッケージをダウンロードしますダウンロードリンク: クリッ...

Nginx サーバーの https 設定方法の例

Linux: Linux バージョン 3.10.0-123.9.3.el7.x86_64 ngin...

nginx でネストされた if メソッドを実装する方法

Nginx はネストされた if ステートメントをサポートしておらず、if ステートメントでの論理判...

Win10 VM 仮想マシンに Mac OS10.14 を完璧にインストールする (グラフィック チュートリアル)

最近、Apple の記者会見を見てとても興奮したので、Mac システムを体験して Apple の素晴...

Linuxテキスト処理ツールの詳細な説明

1. /etc/passwdファイル内のデフォルトシェルが/sbin/nologinではないユーザー...

フロントエンドのパフォーマンス最適化を学習するための準備として、HTML ページのレンダリング プロセスを理解する (続き)

昨夜、ブラウザのレンダリングプロセスに関するエッセイを書きましたが、小さなコードで説明しただけでした...

非ルートユーザーを使用してDockerコンテナでスクリプト操作を実行する

アプリケーションをコンテナ化した後、Docker コンテナを起動すると、デフォルトで root ユー...

dockerを使用してGrafana+Prometheus構成をデプロイする

docker-compose-monitor.yml バージョン: '2' ネットワ...

独自の YUM リポジトリを作成する手順

簡単に言うと、ウェアハウスとして使用される仮想マシンの IP は 192.168.149.129 で...

vue-routeルーティング管理のインストールと設定方法

導入Vue Router 、 Vue.jsの公式ルーティング マネージャーです。 Vue.jsのコア...

Vue印刷機能を実装する2つの方法の概要

方法1: npm経由でプラグインをインストールする1. npm install vue-print-...

XHTML におけるタイトルタグと段落タグの使用に関する詳細な説明

XHTML 見出しの概要Word 文書を作成するときは、「第 1 章」、「1.2.1」などのタイトル...