タブステータスバーの切り替え効果を実現するための js と jQuery

タブステータスバーの切り替え効果を実現するための js と jQuery

今日は、タブ バーをクリックして切り替えるという目的を実現するために、js と jQuery を使用する簡単なケースを作成します。効果は次のようになります。

コードは次のとおりです。

<!DOCTYPE html>
<html>
 <ヘッド>
  <メタ文字セット="utf-8">
  <title>ステータスバースイッチ</title>
  <スタイル>
   * {
    マージン: 0;
    パディング: 0;
    ボックスのサイズ: 境界線ボックス;
   }
 
   。主要 {
    幅: 720ピクセル;
    表示: ブロック;
    マージン: 50px 自動;
   }
 
   .table-title {
    幅: 100%;
    高さ: 100%;
    境界線: 1px 黒一色;
   }
 
   .table-title ul {
    リストスタイル: なし;
    ディスプレイ: フレックス;
   }
 
   .table-title li {
    幅: 25%;
    高さ: 100%;
    背景色: ゲインズボロ;
    テキスト配置: 中央;
    border-right: 1px 黒一色;
    カーソル: ポインタ;
   }
 
   .table-title li:最後の子 {
    右境界線: なし;
   }
 
   .table-title li ラベル {
    テキスト配置: 中央;
    カーソル: ポインタ;
   }
 
   .タブボックス .タブ表示 {
    表示: なし;
    境界線: 1px 黒一色;
    上境界線: なし;
    テキスト配置: 中央;
   }
 
   /* 最初のフレームを表示します */
   .tab-box .tab-show:first-Child {
    表示: ブロック;
   }
 
   。変化 {
    不透明度: 0.7;
   }
  </スタイル>
  <script src="js/jquery-3.5.1.js"></script>
  <スクリプト>
   // js は window.onload = function() { を実装します
    //要素を取得する var allLi = document.getElementsByTagName("li");
    var ボックス = document.getElementsByClassName("タブボックス")[0].children;
    //切り替え効果を実現するためのトラバーサル for (var i = 0; i < allLi.length; i++) {
     //各liの属性インデックス値を定義します。allLi[i].index = i; 
     //クリックイベントを追加 allLi[i].onclick = function() {
      //インデックス値を取得します。var index = this.index;
      //コンテンツボックスを表示する[index].style.display="block";
      allLi[インデックス].style.opacity=0.7;
      (var j = 0; j < allLi.length; j++) の場合 {
       //兄弟要素のスタイルを元に戻す if(j != index){
        ボックス[j].style.display="なし";
        allLi[j].style.opacity=1;
       }
      }
     }
    }
   }
   // jQuery は $().ready(function() { を実装します
    $(".table-title li").click(function() {
     // .index() メソッドを使用して 0 から始まる要素インデックスを取得し、それを変数に割り当てます。var _index = $(this).index();
     // _index 番目のコンテンツ ボックスを表示し、その他を非表示にします $(".tab-box>div").eq(_index).show().siblings().hide();
     // オプション ボックスが選択されたときにそのスタイルを変更し、他のいくつかのオプションのスタイルを削除します$(this).addClass("change").siblings().removeClass("change");
    });
   });
  </スクリプト>
 </head>
 <本文>
  <div class="main">
   <div class="テーブルタイトル">
    <ul>
     <li><label>携帯電話デジタル</label></li>
     <li><label>コンピューター作業</label></li>
     <li><label>日用品</label></li>
     <li><label>家庭に欠かせないもの</label></li>
    </ul>
   </div>
   <div class="tab-box" style="幅: 100%;高さ: calc(100%-40px);">
    <div class="tab-show">
     携帯電話デジタル
    <div class="tab-show">
     コンピュータオフィス</div>
    <div class="tab-show">
     日用品
    <div class="tab-show">
     家庭の必需品</div>
   </div>
  </div>
 </本文>
</html>

さらに詳しく知りたい場合は、次の2つの素晴らしいトピックをクリックしてください。JavaScriptタブ操作方法の概要jQueryタブ操作方法の概要

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

以下もご興味があるかもしれません:
  • JavaScript でタブ切り替えを実装する 4 つの方法
  • 合理化されたJS DIVレイヤータブ切り替えコード
  • js (JavaScript) で TAB タグ切り替え効果の簡単な例を実現する
  • タブ切り替え効果をJavaScriptで実現(自作ネイティブjs)
  • タブ切り替え効果を実現するVue.jsコンポーネントタブ
  • タブ切り替えを実現するネイティブjs
  • jQuery を使用して div タブを切り替えるためのサンプル コード
  • タブ切り替えのjQueryバージョン
  • jQuery シンプルなタブ切り替えエフェクト実装方法
  • jQueryで実装したタブスライドと画像切り替え(複数のエフェクト)のまとめ

<<:  MySQLのスリープ関数の特殊現象例の詳しい説明

>>:  Docker で SVN サーバーを構築するチュートリアル

推薦する

Linuxシステムの操作レベルの詳細な紹介

目次1. Linuxシステムの操作レベルの概要2. 実行レベルを確認する3. 現在のシステムの動作レ...

xtrabackup による MySQL データベースのバックアップと復元

mysqldump バックアップは、その独自の特性 (テーブルのロック、基本的に挿入スクリプトまたは...

Linux ソースコードからのソケット (TCP) バインドの詳細な説明

目次1. 最も単純なサーバー側の例2. バインドシステムコール2.1、inet_bind 2.2、i...

nginxを使用してドメイン名ベースの仮想ホストを構成する

1. 仮想ホストとは何ですか?仮想ホストは、特殊なテクノロジーを使用して、実行中のサーバーを論理的に...

MySQLクエリステートメント内のユーザー変数のコード分析

前回の記事では、MySQL 最適化の概要 - クエリの合計数を紹介しました。この記事では、クエリ ス...

JavaScript で実装された 6 つの Web ページ画像カルーセル効果の詳細な説明

目次1. マウスがカルーセル モジュール上を通過すると、左右のボタンが表示され、モジュールを離れると...

JS はランダム点呼システムを実装します

参考までに、JSを使用してランダム点呼システムを実装します。具体的な内容は次のとおりです。毎回の授業...

MAC+PyCharm+Flask+Vue.js ビルドシステム

目次node.js+nvm+npm を設定するnpmスイッチタオバオミラーVue.jsをインストール...

MySQL でデータベースを作成した後、ユーザー 'root'@'%' によるデータベース 'xxx' へのアクセスが拒否される問題を解決する

序文最近、仕事で問題が発生しました。データベースを作成した後、データベースに接続するときにエラーが発...

MySQLクエリで大文字と小文字を区別しない問題を解決する方法

質問最近、SSH フレームワークを使用して実用的なプロジェクトを完了していたときに、長い間悩まされて...

vue3.2 で追加された defineCustomElement の基本原理の詳細な説明

目次Webコンポーネントカスタム要素概要HTMLTemplateElement コンテンツ テンプレ...

VirtualBox は CentOS7 仮想マシンと拡張ツールをインストールします (画像とテキスト)

コンピュータシステム: win7この記事は主に写真に基づいており、多くの写真が含まれていますCent...

Javascriptでビルダーパターンを実装する方法

概要ビルダー パターンは比較的単純なデザイン パターンであり、作成パターンに属します。定義: 複雑な...

一般的なDockerコマンドの詳細な説明

1. ヘルプコマンド1. 現在のDockerバージョンを表示する docker バージョン2. イメ...

JSはタイムラインの自動再生を実現する

最近、次のような効果を実装しました。再生ボタンをクリックするとタイムラインの再生が開始され、一時停止...