ユニバーサル Infinitus ドロップダウン メニューの実装コード
この記事では、主にユニバーサル Infinitus ドロップダウン メニューの実装コードを紹介します。これは、必要な友人に参照してもらうために共有します。すべてのプロジェクトを最初から作成する必要があります。変更するのは簡単ですが、今日はまだ比較的面倒です。ユニバーサルバージョンなので、今後はそれほど面倒なことはありません。
特徴
今回コンパイルしたメニューはjquery+cssで開発されており、以下の特徴を持っています:
1. 高い汎用性以前使用していたドロップダウンメニューに問題があり、必要だったのでメインのナビゲーションとサブメニューの設定を分離する場合、たとえば、第 2 レベルのメニューは class="first_menu"、第 3 レベルのメニューは class="second_menu" のようになります。この書き方には 1 つの問題があります。プログラマがループ出力を実行するのは有益ではなく、このメニューには CSS スタイルを導入するだけでよく、マルチレベルのメニューを定義する必要はありません。
2. ドロップダウン命令の美しい自動呼び出し以前は、ドロップダウン メニューにドロップダウン表示クラスを手動で追加していましたが、現在はドロップダウンのスタイルを定義するだけで済みます。 CSS で down 効果を追加すると、コードが自動的にドロップダウン メニューを見つけて追加します。矢印を示します
3. 単純な呼び出しプログラマの出力リストは単純で、多くの判断を必要とせず、再帰的に呼び出すだけです。メニューデータ。
実装
1. HTMLコード まず、メニューリストを形成するulとliで構成されるメニューデータをページ上に出力します。具体的な構造のコードは次のとおりです。
<ul class="Menue"> <li class="Menue_li"><a href="#">首页</a></li> <li class="Menue_li"><a href="#">菜单一</a> <ul class="sub_menu"> <li><a href="#">过山车</a></li> <li><a href="#">火山爆发</a></li> <li><a href="#">小小鸟</a></li> </ul> </li> <li class="Menue_li"><a href="#">菜单二</a> <ul class="sub_menu"> <li><a href="#">关于我们</a> <ul class="sub_menu"> <li><a href="#">山高地缘</a> <ul class="sub_menu"> <li><a href="#">飞鸽传书</a></li> <li><a href="#">生生世世</a></li> <li><a href="#">飞黄腾达</a></li> </ul> </li> <li><a href="#">数据库</a> <ul class="sub_menu"> <li><a href="#">数据库表</a></li> <li><a href="#">数据加密</a></li> <li><a href="#">数据建模</a></li> </ul> </li> <li><a href="#">C摄像头</a></li> </ul> </li> <li><a href="#">测试产品</a></li> </ul> </li> </ul>
いくつかの基本的な HTML コードは非常に単純です。コードの構造を強調します。それが第 2 レベルであるかどうかです。 3 番目のレベルまたは複数のレベルのメニューは主にネストされています。スタイル シートの名前も非常にシンプルで、プログラム コードのループ呼び出しに非常に役立ちます。
2. CSS スタイル CSS スタイルのコードも非常にシンプルです:
a { text-decoration:none; } ul, li { list-style:none; margin:0; padding:0; } /*定义菜单*/ .Menue li { background:#111; color:#fff; height:30px; line-height:30px; position:relative; float:left; margin-right:5px; width:100px; text-align:center; font-family:Arial, Helvetica, sans-serif; } .Menue li a { color:#fff; font-size:14px; display:block; } /*下拉菜单样式*/ ul.sub_menu { position:absolute;width:100px; display:none; z-index:999; } .Menue li ul.sub_menu li { background:none; color:#555; font-size:12px; border-bottom:1px #333 solid; position:relative; width:100px; height:30px; } .Menue li ul.sub_menu li.last { border-bottom:none; } /*js会对最后一个li添加该class,去掉border-bottom效果*/ .Menue li ul.sub_menu li a { background:#222; color:#888; display:block;height:30px; } .Menue li ul.sub_menu li a:hover, .Menue li ul.sub_menu li a.now { background:#f90;color:#fff;} .Menue li.now,.Menue li.current { background:#f60;color:#fff;} /*如果有下拉菜单添加的class*/ .hasmenu { background:url(arrow.png) no-repeat right; padding-right:15px;}/*主导航箭头向下*/ .Menue li a.hasmenu { background:url(arrow.png) no-repeat right; padding-right:15px;background-position:right -30px;}/*下拉菜单箭头向右*/ .Menue li ul.sub_menu li a.hasmenu { background:#222 url(arrow.png) no-repeat right top;} .Menue li ul.sub_menu li a.hasmenu:hover { background:#f90 url(arrow.png) no-repeat right top; color:#fff;}
ここでは 2 つの点だけを強調します:
1.位置の相対
absolute: 絶対的な配置、CSS の記述方法「position: ABSOLUTE;」、その配置は次の 2 つの状況に分けられます:
A. Top、Right、Bottom、Left が設定されていない場合、デフォルトは親の「コンテンツエリア」を基準にした「原点」が原点となります。
B.Top、Right、Bottom、Leftが設定されている場合は以下の2つがあります:
(1) ブラウザの左上隅。つまり、Body) は「元の座標」です。クリックして配置します。位置は、Top、Right、Bottom、Left 属性によって決定されます。
(2) 親は位置属性を持ち、親の「座標の原点」が原点になります。
relative: 相対配置、CSSの書き方「position:relative;」、親の「コンテンツ領域の原点」を原点として参照、親が無い場合は「コンテンツの原点」を使用Bodyの「エリア」を原点とし、その位置はTop、Right、Bottom、Left属性で決定され、「高さを拡張または占有」する機能を持ちます。
上記 2 つの違いは非常に重要であり、これら 2 つの特性のため、開発中に問題を探すのに多くの時間を費やしました。
2. 背景位置の使用
ウェブサイトの速度を向上させ、ウェブサイトの管理を容易にするために、よく使用されるいくつかの小さな画像を大きな画像上に配置することがあります。この方法は、CSS が対応する小さな画像を必要とする場合に使用できます。意味を理解していれば実装は非常に便利です。このメソッドの明確な点は、画像インターセプト関数です。その使用法は次のように詳しく説明されています。
length : パーセント | 浮動小数点数と単位識別子で構成される長さの値。位置 : 上 | 中央 | 下 | 左 | 右
オブジェクトの背景画像の位置を設定または取得します。最初に、background-image 属性を指定する必要があります。このプロパティの位置は、オブジェクトのパディング設定の影響を受けません。デフォルト値は 0% 0% です。このとき、背景画像はパディングを除いたオブジェクトのコンテンツ領域の左上隅に配置されます。値が 1 つだけ指定されている場合は、その値が横軸に使用されます。縦軸のデフォルトは 50% です。 2 つの値が指定された場合、2 番目の値が縦軸に使用されます。設定値が右中央の場合、横軸の値が中央の値よりも優先されるため、背景画像は右側に配置されます。ここにいくつかの方程式があります左上、左上は 0% 0% に相当します。上、中央上、中央上は 50% 0% に相当します。右上、右上は 100% 0 % に相当します。 .
左、左中央、中央左は 0% 50% に相当します。中央、中央中央は 50% 50% に相当します。右、右中央、中央右は 100% 50% に相当します。左下、左下は0% 100%に相当します。下、中央下、中央下は50% 100%に相当します。
bottom right, right bottom 等价于 100% 100%
三、JS代码
本菜单是以jquery为基础的所以首先必须引入jquery代码库,然后编写如下JS代码实现下拉菜单。
<script src="js/jquery.min.js"></script> <script> $(document).ready(function(){ //为导航设置默认高亮 与本菜单无关 $("ul.Menue li.Menue_li:eq(0)").addClass("current") /*jquery menu 开始*/ //为子菜单的最后一个li添加样式,适合为li添加下划线时去除最后一个的下划线 $(".sub_menu").find("li:last-child").addClass("last") //遍历全部li,判断是否包含子菜单,如果包含则为其添加箭头指示状态 $(".Menue li").each(function(){ if($(this).find("ul").length!=0){$(this).find("a:first").addClass("hasmenu")} }) // $(".Menue li").hover(function(){ $(this).addClass("now"); var menu = $(this); menu.find("ul.sub_menu:first").show(); },function(){ $(this).removeClass("now"); $(this).find("ul.sub_menu:first").hide(); }); var submenu = $(".sub_menu").find(".sub_menu") submenu.css({left:"100px",top:"0px"}) $(".sub_menu li").hover(function(){ $(this).find("a:first").addClass("now") $(this).find("ul:first").show(); },function(){ $(this).find("a:first").removeClass("now") $(this).find("ul:first").hide() }); /*jquery menu 结束*/ }) </script>
通过以上步骤就实现了一个通用的多级菜单,上面代码是本人日常开发中的积累,由于本人水平有限可能存在着许多错误希望同僚们批评指正或提出更优化的代码供本人参考,谢谢。
以上がユニバーサル Infinitus ドロップダウン メニューの実装コードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









WPS テーブルのドロップダウン メニューの作成方法: ドロップダウン メニューを設定するセルを選択した後、「データ」、「有効性」の順にクリックし、ポップアップ ダイアログ ボックスで対応する設定を行います。メニューをプルダウンします。 WPS は強力なオフィス ソフトウェアとして、ドキュメントや統計データ テーブルなどを編集する機能を備えており、テキストやデータなどを扱う必要がある多くの人々にとって非常に便利です。 WPSソフトを上手に使って便利に使うためには、WPSソフトの基本的な操作をマスターする必要がありますが、今回は編集部がWPSソフトの使い方を紹介します。表示されるWPSテーブルのダウンメニュー操作を行います。 WPSフォームを開いたら、まず、

ブルー スクリーン コード 0x0000001 の対処法。ブルー スクリーン エラーは、コンピューター システムまたはハードウェアに問題がある場合の警告メカニズムです。コード 0x0000001 は、通常、ハードウェアまたはドライバーの障害を示します。ユーザーは、コンピュータの使用中に突然ブルー スクリーン エラーに遭遇すると、パニックになり途方に暮れるかもしれません。幸いなことに、ほとんどのブルー スクリーン エラーは、いくつかの簡単な手順でトラブルシューティングして対処できます。この記事では、ブルー スクリーン エラー コード 0x0000001 を解決するいくつかの方法を読者に紹介します。まず、ブルー スクリーン エラーが発生した場合は、再起動を試みることができます。

Huawei 携帯電話にデュアル WeChat ログインを実装するにはどうすればよいですか?ソーシャルメディアの台頭により、WeChatは人々の日常生活に欠かせないコミュニケーションツールの1つになりました。ただし、多くの人は、同じ携帯電話で同時に複数の WeChat アカウントにログインするという問題に遭遇する可能性があります。 Huawei 社の携帯電話ユーザーにとって、WeChat の二重ログインを実現することは難しくありませんが、この記事では Huawei 社の携帯電話で WeChat の二重ログインを実現する方法を紹介します。まず第一に、ファーウェイの携帯電話に付属するEMUIシステムは、デュアルアプリケーションを開くという非常に便利な機能を提供します。アプリケーションのデュアルオープン機能により、ユーザーは同時に

デバイスをリモートでプログラムする必要がある場合は、この記事が役に立ちます。あらゆるデバイスをプログラミングするためのトップ GE ユニバーサル リモート コードを共有します。 GE リモコンとは何ですか? GEUniversalRemote は、スマート TV、LG、Vizio、Sony、Blu-ray、DVD、DVR、Roku、AppleTV、ストリーミング メディア プレーヤーなどの複数のデバイスを制御するために使用できるリモコンです。 GEUniversal リモコンには、さまざまな機能を備えたさまざまなモデルがあります。 GEUniversalRemote は最大 4 台のデバイスを制御できます。あらゆるデバイスでプログラムできるトップのユニバーサル リモート コード GE リモコンには、さまざまなデバイスで動作できるようにするコードのセットが付属しています。してもいいです

プログラミング言語 PHP は、さまざまなプログラミング ロジックやアルゴリズムをサポートできる、Web 開発用の強力なツールです。その中でも、フィボナッチ数列の実装は、一般的で古典的なプログラミングの問題です。この記事では、PHP プログラミング言語を使用してフィボナッチ数列を実装する方法を、具体的なコード例を添付して紹介します。フィボナッチ数列は、次のように定義される数学的数列です。数列の最初と 2 番目の要素は 1 で、3 番目の要素以降、各要素の値は前の 2 つの要素の合計に等しくなります。シーケンスの最初のいくつかの要素

Huawei 携帯電話に WeChat クローン機能を実装する方法 ソーシャル ソフトウェアの人気と人々のプライバシーとセキュリティの重視に伴い、WeChat クローン機能は徐々に人々の注目を集めるようになりました。 WeChat クローン機能を使用すると、ユーザーは同じ携帯電話で複数の WeChat アカウントに同時にログインできるため、管理と使用が容易になります。 Huawei携帯電話にWeChatクローン機能を実装するのは難しくなく、次の手順に従うだけです。ステップ 1: 携帯電話システムのバージョンと WeChat のバージョンが要件を満たしていることを確認する まず、Huawei 携帯電話システムのバージョンと WeChat アプリが最新バージョンに更新されていることを確認します。

プログラマーとして、私はコーディング体験を簡素化するツールに興奮しています。人工知能ツールの助けを借りて、デモ コードを生成し、要件に応じて必要な変更を加えることができます。 Visual Studio Code に新しく導入された Copilot ツールを使用すると、自然言語によるチャット対話を備えた AI 生成コードを作成できます。機能を説明することで、既存のコードの意味をより深く理解できます。 Copilot を使用してコードを生成するにはどうすればよいですか?始めるには、まず最新の PowerPlatformTools 拡張機能を入手する必要があります。これを実現するには、拡張機能のページに移動し、「PowerPlatformTool」を検索して、[インストール] ボタンをクリックする必要があります。

今日のソフトウェア開発分野では、効率的で簡潔かつ同時実行性の高いプログラミング言語として、Golang (Go 言語) が開発者にますます好まれています。豊富な標準ライブラリと効率的な同時実行機能により、ゲーム開発の分野で注目を集めています。この記事では、ゲーム開発に Golang を使用する方法を検討し、具体的なコード例を通じてその強力な可能性を示します。 1. ゲーム開発における Golang の利点 Golang は静的型付け言語として、大規模なゲーム システムの構築に使用されます。
