私は初心者です。自分のサイトの特定のページで、メニュー項目の上にあるサブメニュークラスを非表示にしたい特定のページのサブメニュークラスを非表示にする
urlがwww.mysite.it/loginの場合は、ログイン(メニュー項目)ホバー上の.submenuを非表示にします。
私は初心者です。自分のサイトの特定のページで、メニュー項目の上にあるサブメニュークラスを非表示にしたい特定のページのサブメニュークラスを非表示にする
urlがwww.mysite.it/loginの場合は、ログイン(メニュー項目)ホバー上の.submenuを非表示にします。
bodyIdパラメータをbodyクラスに出力する方が簡単な場合がありますので、テンプレートメインファイル(通常は/templates/something/index.php
)を編集して<body
というタグを見つけて、次のように変更します。
<body class="your other classes here <?php
$app = JFactory::getApplication();
$menu = $app->getMenu()->getActive()->id;
echo "pageid-$itemId"
?>"
これはカスタムCSSルールに必要に応じてあなたにこの修正プログラムを紹介したいページはのitemId 1302を持っていると仮定すると、あなたは、単にあなたのナビゲーションをターゲットにそれを使用することができ、その後、
として<body class="your other classes here pageid-1302">
をレンダリングします:
body.pageid-1302 nav.main > ul > li:nth-child(3):hover > ul > li:nth-child(2) {
display:none;
}
(これは単なる例ですが、私のクラスについてはわかりませんが、サブメニューのみを対象とする正しいパスを見つけなければなりません。 また、クラスが異なる場合があるので、モバイルでテストしてください。
このソリューションはスクリプトを使用しません。あなたが隠すことを望むサブメニューが、ホバリングされたアイテムの子である場合、それは容易に機能します。アイテムが他の場所にある場合は、実際にスクリプトが必要になります。このケースでは、ホバーイベントに関数を添付し、それに応じて行動する必要があるでしょう:仮定jQueryが提供されています:
jQuery(function() {
// now the document is loaded
jQuery('.firstmenuselector').on('hover',function() {
// the user hovered the element;
jQuery('.submenuselector').hide();
},function() {
// the user exited the element;
jQuery('.submenuselector').show();
});
});
最後に、あなたが関与メニュー項目にクラスを追加したいので、それかもしれませんcssまたはjQueryセレクタを使用してターゲット設定するのが簡単になります。
ありがとう、私はこの解決策を試してみます。 –