jsはクリックしてカードを切り替える機能を実現します

jsはクリックしてカードを切り替える機能を実現します

この記事の例では、クリックしてカードを切り替える機能を実現するためのjsの具体的なコードを共有しています。具体的な内容は次のとおりです。

実際のアプリケーションでは、要素をクリックしたり移動したりしてドロップダウン メニューやページをポップアップ表示することは、Web デザインでよく使われる操作です。

次に、メニューをクリックしてメニューを切り替える機能を実装し、js を使用してこの機能を実装する 3 つの方法を提供します。

1. HTMLを使用して基本構造を設計する

<本文>
<h2>マルチタブクリックスイッチ</h2>
<ul id="タブ">
  <li id="tab1" value="1">10元セット</li>
  <li id="tab2" value="2">30元セット</li>
  <li id="tab3" value="3">月額50元</li>
</ul>
<div id="コンテナ">
  <div id="content1">
    10 元パッケージの詳細: <br/>&nbsp;月額パッケージ内での通話は 100 分、超過分は 0.2 元/分</div>
  <div id="content2" スタイル="display: none">
    30 元パッケージの詳細: <br/>&nbsp; 月間パッケージ内で 300 分の通話、超過分は 1.5 元/分</div>
  <div id="content3" スタイル="display: none">
    月額 50 元のパッケージの詳細: <br/>&nbsp;月間通話無制限</div>
</div>
</本文>

2. CSSを使用して基本的なスタイルをデザインする

<スタイル>
    * {
      マージン: 0;
      パディング: 0;
    }
    #タブli {
      フロート: 左;
      リストスタイル: なし;
      幅: 80ピクセル;
      高さ: 40px;
      行の高さ: 40px;
      カーソル: ポインタ;
      テキスト配置: 中央;
    }
    #容器 {
      位置: 相対的;
    }
    #コンテンツ1、#コンテンツ2、#コンテンツ3 {
      幅: 300ピクセル;
      高さ: 100px;
      パディング: 30px;
      位置: 絶対;
      上: 40px;
      左: 0;
    }
    #タブ1、#コンテンツ1 {
      背景色: #ffcc00;
    }
    #タブ2、#コンテンツ2 {
      背景色: #ff00cc;
    }
    #タブ3、#コンテンツ3 {
      背景色: #00ccff;
    }
</スタイル>

3.jsはクリック切り替え機能を実装します

//ネイティブjs
  var コンテナ = document.querySelectorAll('#container>div')
  var event_li = document.querySelectorAll('#tab>li')
  var 現在のインデックス = 0
  for(var i=0;i<event_li.length;i++){
    イベント_li[i].num=i
    event_li[i].onclick=関数(){
      コンテナ[現在のインデックス].style.display='なし'
      var index_other = this.num
      コンテナ[index_other].style.display='ブロック'
      現在のインデックス=インデックス_その他
  }}
//jQuery 実装では、親要素をクリックすると、すべての子要素が display_none になり、クリック イベントのある要素の子要素が display_block に設定されます。
var $container = $('#container>div')
$('#tab>li').click(function(){
  $container.css('表示', 'なし')
  var インデックス = $(this).index()
  var index_other = $(this).val()-1
  $container[index_other].style.display = 'ブロック'
})
//jQuery 実装では、親要素をクリックすると、最初の要素の子要素は display_none になり、クリック イベントのある要素の子要素は display_block に設定されます。
現在のインデックス=0
$('#tab>li').click(function(){
  $($container[currentindex]).css('display', 'none')
  var インデックス = $(this).index()
  $container[index].style.display = 'ブロック'
  現在のインデックス=インデックス
})

4. まとめ

(1) ネイティブjsでもクリックして切り替える機能は実現できますが、jQueryを使う方が簡単です。構文はシンプルですが、機能は強力です。

(2)方法2と3を比較すると、方法2ではクリックイベントをトリガーした後、すべての子要素の表示モードをnoneに設定していることがわかります。明らかに、子要素の数が多い場合は、必要な変更の数もそれに応じて増加し、必然的に読み込みパフォーマンスに影響を与えます。したがって、方法3に最適化する必要があります。

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

以下もご興味があるかもしれません:
  • jsはクリックして切り替えるTABタグインスタンスを実装します
  • Vue.js トグルボタンをクリックして例の内容を変更します
  • クリックスイッチTABタグの例を実現するシンプルな純粋なjs
  • JSで実装したシンプルなタブクリック切り替え機能の例
  • ネイティブJSは画像の非表示と表示を実現し、JSは画像のクリックと切り替えを実現します
  • jQuery プラグイン jquery.LightBox.js は、クリックして画像を拡大したり、左クリックと右クリックを切り替える効果を実現します (デモ ソース コードのダウンロードあり)
  • チェックボックスをクリックして背景画像を切り替えるための js を使用した簡単な例
  • JavaScript で実装したシンプルなタブクリック切り替え機能の例
  • JavaScript でタブクリック切り替えのサンプルコードを実装する
  • JSは、水色のシンプルな垂直タブクリック切り替え効果を実現します

<<:  Centos8 で Docker を使用して Django プロジェクトをデプロイする詳細なチュートリアル

>>:  MySQLにおける正規表現の一般的な使用法

推薦する

MySQL 5.7.19 のインストールと設定方法のグラフィック チュートリアル (win10)

以下に記録されているように、WIN10システムにMYSQLをダウンロードしてインストールするための詳...

Linux スワップメモリ​​を拡張する方法

スワップ メモリとは、主に物理メモリが不足している場合に、システムがハード ディスク領域の一部をサー...

MySQL のソート関数 field() の詳細な例

序文私たちの日常の開発プロセスでは、ソートが頻繁に使用され、そのような要求がある場合もあります。たと...

1つの記事でNavicat for MySQLの基本を理解する

目次1. データベース操作2. データ型3. バックアップとリカバリ3. 操作4. 上級5. 知識補...

vue3 学習ノートにおける axios の使用の変更の概要

目次1. axioの基本的な使い方2. クロスドメインの問題を解決するには? 3. パッケージ4. ...

MySQL初心者はグループ化や集計クエリの煩わしさから解放されます

目次1. グループクエリの概略図2. groupbyキーワード構文の詳細な説明3. 簡単なグループク...

デザイナーと開発者に役立つ 9 つの超実用的な CSS のヒント

Web デザイナーの頭の中には、仕事に関連する多くの知識が詰まっている必要があります。 CSS は、...

標準のMySQL (x64) Windowsバージョンのインストール手順の詳細な説明

MySQL x64 はインストーラーを提供していません、インストーラーを提供していません、インストー...

Vueコンポーネントの詳細な説明

<本文> <div id="ルート"> <h2&...

ドラッグアンドドロップでVueユーザーインターフェースを生成する方法

目次序文1. 技術原理1.1 レイアウト1.2 コンポーネント1.3 ステータス1.4 イベント1....

Linuxコマンドのファイル上書きとファイル追加の詳細な説明

1. コマンド > と >> の違いコマンド>: ファイルが存在する場合は、...

OR キーワードを使用した MySql 複数条件クエリ ステートメント

前の記事では、And キーワードを使用した MySql の複数条件クエリ ステートメントを紹介しまし...

jsネイティブカルーセルプラグインの制作

この記事では、jsネイティブカルーセルプラグインの具体的なコードを参考までに共有します。具体的な内容...

Linux ssh サービス情報と実行ステータスを表示する方法

Linux での ssh サービス構成など、ssh サーバー構成に関する記事は多数あります。ここでは...