ドロップダウンメニューを実装するためのネイティブ 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環境を構成し、操作を実装する

推薦する

HTML 中国語文字エンコード標準の概要

HTML では、Web ページで使用されるエンコーディングを指定する必要があります。一般的な指定方法...

Vueは適切なスライドアウトレイヤーアニメーションを実装します

この記事では、適切なスライドアウトレイヤーアニメーションを実装するためのVueの具体的なコードを例と...

MySQL 8.0.24 リリースノートのいくつかの改善点

目次1. 接続管理2. オプティマイザレベルでの改善3. 機能の改善4. パフォーマンススキーマの最...

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

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

Vue プロジェクトで SVG コンポーネントをパッケージ化して構成する手順

最近新しい会社に入社しました。プロジェクトに携わった後、タイトルアイコンが svg で作られていると...

Ubuntu 18.04 (物理マシン) で OpenWRT 開発環境を構成する方法

1. 仮想マシン(物理マシン)をインストールする仮想マシンまたは物理マシンにインストールできます。 ...

CSS+JS で水滴の波紋アニメーション ボタン効果を実装するサンプル コード

コードは次のようになります。 <!DOCTYPE html> <html lang...

CentOS 8.4 での Docker パッケージのオフラインインストールの問題について

使用する仮想マシンは、サーバー環境をシミュレートする CentOS 8.4 です。外部ネットワークに...

Vue.js パフォーマンス最適化 N 個のヒント (収集する価値あり)

目次機能コンポーネント子コンポーネントの分割ローカル変数v-show によるDOMの再利用キープアラ...

FileZilla_Server:425 データ接続を開けない問題を解決する方法

FileZilla Serverをサーバーにインストールすると、425データ接続を開けない問題が発生...

Dockerイメージのインポートとエクスポートの実装

GitLabのDocker使用法gitlab ドッカー起動コマンド docker run -d -p...

IDEA を使用して Tomcat を設定し、JSP ファイルを作成する方法

idea を使用して JSP ファイルを書き込む前に、jdk 環境 (ここでは説明しません) と対応...

Docker を使って LEMP 環境を素早く構築する方法の例

LEMP(Linux + Nginx + MySQL + PHP)は、基本的に今日のWeb開発者にと...

この記事は、Dockerにおけるcgroupの具体的な使用法を徹底的に理解するのに役立ちます。

目次cgroupとはcgroupの構成cgroupが提供する機能cgroup 内の CPU を制限す...

フロントエンドにアニメーション遷移効果を実装する方法

目次導入従来のトランジションアニメーションCSS トランジションアニメーションjsアニメーション従来...