ドロップダウンメニューを表示または非表示にするJavaScript

ドロップダウンメニューを表示または非表示にするJavaScript

この記事では、ドロップダウンメニューを表示および非表示にするJavaScriptの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

場合によっては、このページ効果が必要になります。

マウスを要素の上に移動すると、ドロップダウン メニューが実装されます。マウスを要素から離すと、ドロップダウン メニューは消えます。

実装のアイデア

1. ボックスには 2 つの部分があり、下部はサブメニューで、最初は非表示に設定されています: display: none;
2. マウスがボックスに移動すると、トリガーイベント---onmouseover、jsは下のサブメニューの表示値を---blockに設定し、サブメニューを表示します。
3. マウスをボックスから離すと、イベント - - -onmouseout がトリガーされ、js は下のサブメニューの表示値を - - -none に設定し、サブメニューを再び非表示にします。
4. 必要に応じてフォントの色、背景色、その他のスタイルを変更します。

コードサンプル

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

<ヘッド>
    <メタ文字セット="UTF-8">
    <meta http-equiv="X-UA-compatible" content="IE=edge">
    <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
    <title>操作要素 - Sina ドロップダウン メニュー</title>
    <スタイル>
        * {
            マージン: 0;
            パディング: 0;
            ボックスのサイズ: 境界線ボックス;
        }
        
        ul li {
            リストスタイル: なし;
        }
        
        {
            テキスト装飾: なし;
            色: #4c4c4c;
        }
        
        ホバー{
            色: #e88415;
        }
        
        。箱 {
            幅: 80ピクセル;
            マージン: 50px 自動;
            フォントサイズ: 14px;
            色: #4c4c4c;
        }
        
        .weibo{
            位置: 相対的;
            背景色: #fcfcfc;
        }
        
        .weibo {
            表示: ブロック;
            高さ: 40px;
            行の高さ: 40px;
            左パディング: 20px;
        }
        
        。変化 {
            色: #f9a74f;
            背景色: #edeef0;
        }
        
        私 {
            位置: 絶対;
            上位: 50%;
            右: 15px;
            上マージン: -4px;
            幅: 5px;
            高さ: 5px;
            border-bottom: 1px 実線オレンジ赤;
            border-right: 1px 実線オレンジ赤;
            変換: 回転(45度);
        }
        
        .weiboリスト{
            表示: なし;
        }
        
        .weiboList li a {
            表示: ブロック;
            幅: 80ピクセル;
            高さ: 33px;
            行の高さ: 33px;
            左パディング: 15px;
            下境界線: 1px 実線 #fecc5b;
            背景色: #fff;
        }
        
        .weiboList li a:hover {
            背景色: #fff5da;
        }
    </スタイル>
</head>

<本文>
    <div class="box">
        <div class="weibo"><a href="#" >Weibo<i class="select"></i></a></div>
        <ul class="weiboList">
            <li><a href="#" >プライベートメッセージ</a></li>
            <li><a href="#" >コメント</a></li>
            <li><a href="#" >@私</a></li>
        </ul>
    </div>

    <スクリプト>
        var box = document.querySelector('.box');
        var weibo = document.querySelector('.weibo');
        var weiboList = document.querySelector('.weiboList');

        box.onmouseover = 関数() {
            weibo.className = 'weibo変更'
            weiboList.style.display = 'ブロック';

        }

        box.onmouseout = 関数() {
            weibo.className = 'weibo';
            weiboList.style.display = 'なし';
        }
    </スクリプト>
</本文>

</html>

ページ効果:

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

以下もご興味があるかもしれません:
  • ドロップダウンメニューを表示または非表示にするJavaScript
  • Vue.js 左のセカンダリメニューを表示および非表示にするサンプルコード
  • jsメニュークリックの効果を表示または非表示にする簡単な例

<<:  VMware 仮想マシンのインストール Apple Mac OS の超詳細なチュートリアル

>>:  https暗号化アクセス用にnginxを設定するための詳細なチュートリアル

推薦する

ウェブサイト上で flv/MP4 やその他のビデオ ファイルを再生できない問題は、MIME タイプに関連しています。

ウェブサイトを作成している際に、flv や MP4 形式などのビデオ ファイルはローカルでは正常に再...

jquery-multiselect を使用した IE6 のバグの解決方法

jquery-multiselect (ドロップダウン ボックスをチェックボックス付きの複数選択コン...

mysql binlog ログを正しくクリーンアップする 2 つの方法

mysqlはbinlogログを正しくクリーンアップします序文: MySQL の binlog はデー...

Vueはメニューナビゲーションを実装するためにelement-uiを使用します

この記事では、Element-uiを使用してメニューナビゲーションを実装するVueの具体的なコードを...

Vue3 でマークダウン エディター コンポーネントを使用する方法

目次インストールコンポーネントのインポート基本的な使い方保存したマークダウンまたは HTML テキス...

速度、読み込み、Web アプリケーションなどにおける div と table の違い。

1: 速度と読み込み方法の違いdivとtableの違いは速度ではなく、読み込み方法です。速度はネット...

Docker コンテナのタイムゾーン エラーの問題

目次背景質問問題分析と解決策新たな問題問題分析と解決策背景node-schedule スケジュール ...

Flask と Vue のフロントエンドとバックエンドを分離したプロジェクト展開のサンプル コード

以前、プロジェクトを開発しました。バックエンドのインターフェースを書くために Flask フレームワ...

10 HTML テーブル関連タグ

実際、多くの人が「テーブルは絶対に使用すべきではないと聞いたことがある」と言いますが、これは絶対に間...

MySQLデータベース移行により、大量のデータを迅速にエクスポートおよびインポートできます

データベースの移行は、よく遭遇する問題です。データ量が少ない場合、移行は基本的に問題になりません。実...

Web2.0製品と機能の簡単な紹介

<br />Web2.0とは何ですか? Web2.0にはソーシャルネットワーク製品とその...

Web デザインのための 5 つのシンプルな XHTML Web フォーム

Web デザイン 5 におけるシンプルな XHTML Web フォーム。 テクニック 1: ラベル ...

MySQL Community Server 5.7.16 のグリーン バージョンをインストールしてリモート ログインを実装する方法

1. MySQL Community Server 5.7.16をダウンロードしてインストールします...

Docker は固定コンテナ IP アドレスを実現するためにカスタム ネットワークを作成します。

デフォルトのブリッジ ネットワークのため、コンテナーを再起動すると IP アドレスが変更されます。シ...

Chrome 73 によるフレックスレイアウトの崩れの解析と解決方法

現象プロジェクトにはネストされたフレックス構造がいくつかあります。 <スタイル> /* ...