ドロップダウンメニューを実装するためのネイティブ js

ドロップダウンメニューを実装するためのネイティブ js

ドロップダウン メニューも実生活では非常に一般的です。実装に使用される js コードは、タブ選択やアコーディオンのものとほぼ同じなので、ここでは詳細には触れません。

Suning.com の公式サイトを参考にドロップダウン メニューを作成しました。実装コードは次のとおりです。

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
    <メタ文字セット="UTF-8">
    <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
    <meta http-equiv="X-UA-compatible" content="ie=edge">
    <title>ドロップダウン メニュー</title>
    <スタイル>
        体、
        ul {
            パディング: 0;
            マージン: 0;
        }
        体{
            背景色:#ccc;
        }
        li {
            リストスタイル: なし;
        }
        {
            テキスト装飾: なし;
        }
        ホバー{
            色: rgb(235, 98, 35);
        }
        .nav {
            フロート: 右;
            上マージン: 10px;
            右マージン: 80px;
            ディスプレイ: フレックス;
            幅: 270ピクセル;
            高さ: 100px;
        }
      
        .nav>li {
            幅: 80ピクセル;
            マージン: 5px;
            テキスト配置: 中央;
        }
        .選択された{
            幅: 80ピクセル;
            背景色:#fff;
            色: rgb(235, 98, 35);
            境界線:1px実線rgb(196, 194, 194);
        }
        .nav>li div:n番目の子(1){
            高さ: 30px;
            行の高さ: 30px; 
        }
        .nav>li div:n番目の子(2){
            表示: なし;
            高さ: 160px;
            幅: 80ピクセル;
            背景色: #fff;
            境界線:1px実線rgb(196, 194, 194);
            border-top:1px 実線 #fff;
            行の高さ: 70px;
        }
        .nav>li>div:n番目の子(2) li{
            高さ: 40px;
            行の高さ: 40px;
        }
    </スタイル>
</head>

<本文>
    
    <ul class="nav">
        <li>
            <div><a herf="#">私の注文</a></div>
            <div>
            <ul>
                <li><a herf="#">支払い待ち</a></li>
                <li><a herf="#">発送待ち</a></li>
                <li><a herf="#">配送待ち</a></li>
                <li><a herf="#">評価待ち</a></li>
            </ul>
            </div>
        </li>    
        <li>
            <div><a herf="#">私の Yigoo</a></div>
            <div>
                    <ul>
                            <li><a herf="#">私の中古品</a></li>
                            <li><a herf="#">私のフォロー</a></li>
                            <li><a herf="#">私の財務</a></li>
                            <li><a herf="#">蘇寧会員</a></li>
                        </ul>
            </div>
        </li>
        <li>
            <div><a herf="#">私のホームページ</a></div>
            <div>
                    <ul>
                            <li><a herf="#">アバター</a></li>
                            <li><a herf="#">ニックネーム</a></li>
                            <li><a herf="#">署名</a></li>
                            <li><a herf="#">住所</a></li>
                        </ul>
            </div>
        </li>
    </ul>
    <スクリプト>
        var s = document.querySelectorAll(".nav li div:nth-child(1)");
        var d = document.querySelectorAll(".nav li div:nth-child(2)");
        (var i=0;i<s.length;i++){
            s[i].インデックス=i;
            s[i].onmouseover=関数(){
                (var j=0;j<s.length;j++){
                    s[j].className="";
                    d[j].style.display="なし";
                }
                this.className="選択済み";
                d[this.index].style.display="ブロック";
            }
        }
    </スクリプト>
   
</本文>

</html>

効果図は以下のとおりです。

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

以下もご興味があるかもしれません:
  • JavaScript ドロップダウン メニュー実装コード
  • css+js ドロップダウンメニュー
  • jsは選択ドロップダウンメニューのデフォルトの選択項目を動的に設定します
  • 3 段階のドロップダウン メニューの JS 実装コード
  • 日付ドロップダウンメニューの js 実装コード
  • JS リアルマルチレベルリンクドロップダウンメニュークラス、省、市、地区のリンクメニューを簡単に実現します。
  • Js クリック ポップアップ ドロップダウン メニュー効果の例
  • JS でナビゲーション メニューにセカンダリ ドロップダウン メニューを実装する 3 つの方法
  • ドロップダウンメニューを表示または非表示にするJavaScript
  • js で全国の省や都市のドロップダウン メニューをカスケード表示する効果コードを実現

<<:  MySQL 8.0.20 圧縮版のインストールチュートリアル(画像とテキスト付き)

>>:  LinuxベースのSelenium環境を構成し、操作を実装する

推薦する

Vue シングルファイルコンポーネントの実装

最近、vue について読みました。これまで基本的に見落としていた単一ファイル コンポーネントを見つけ...

Reactはラジオコンポーネントのサンプルコードを実装します

この記事の目的は、最も明確な構造を使用していくつかのコンポーネントの基本機能を実装することです。皆さ...

Linux で killall コマンドを使用してプロセスを終了する 8 つの例

Linux コマンドラインには、プロセスを強制終了するためのコマンドが多数用意されています。たとえば...

MySQL における EXISTS と IN の使用法の比較

1. 使用法: (1)EXISTSの使用 ucsc_project_batch a から、存在する場...

HTMLテーブルレイアウトの実践的な使い方の詳しい説明

テーブルはいつ使用されますか?最近では、Web ページの全体的なレイアウトにテーブルが使用されること...

dockerコマンドの使用にはsudoは必要ありません

docker デーモンは通常の TCP ポートではなくホストの Unix ソケットにバインドする必要...

Nginx ロケーション ディレクティブ URI マッチング ルールの詳細な概要

1. はじめにロケーション命令は、http モジュールのコア構成です。事前に定義された URL マッ...

Google Web Fonts でウェブサイトに無制限のフォントを追加

長い間、リソースの制約により、使用できるフォントが限られていたため、Web サイトの開発は妨げられて...

MySQL は SQL ステートメントの最新のレコードをクエリします (最適化)

最悪の選択肢は、結果を時間順に並べ替えて最初のものを取ることです。 *から選択 ここで、create...

Docker イメージを Docker Hub にプッシュする実装

イメージが正常にビルドされると、Docker 環境があれば使用できますが、イメージを Docker ...

JS でクリップボード API を使用する方法

目次1. Document.execCommand() メソッド(1)コピー操作(2)貼り付け操作(...

セマンティックタグを使用して、IE6、7、8と互換性のあるHTMLを記述します。

HTML5 では、ヘッダー、フッター、ナビゲーションなどのセマンティック タグが追加されているため...

MySQL ビューの原則と使用例の概要

この記事では、MySQL ビューの原理と使用法についてまとめます。ご参考までに、詳細は以下の通りです...

MySQLデータベースの数千万件のデータクエリとストレージの詳細な説明

目次百万レベルのデータ処理ソリューションデータストレージ構造設計クエリステートメントの最適化1000...

ブラウザの互換モードでボタン内のテキストが垂直方向に中央揃えにならない問題について簡単に説明します。

XML/HTML コードコンテンツをクリップボードにコピー<ボタンスタイル= "カ...