ドロップダウンメニューは、JSから追加された "is-open"というクラスを使用してCSSとHTML/JSで設計されています。指定されたHTML div内に存在すると、CSSをアクティブにしてサブメニューを表示します。外部メニューをクリックするとトグルクラスを削除する方法
ただし、クリックしたドロップダウンメニューは、同じメニュー項目をクリックしない限り消えないという小さな問題があります。
基本機能として、このメニューは、ユーザーがメニュー上でクリックすると消える必要がありますが、ページ上のどこにでも表示されます。
私の現在のjavascriptは以下の通りである。ここでは
$(document).ready(function() {
$(".has-submenu").click(function(e) {
e.stopPropagation();
if($(this).hasClass("is-open")) {
$(this).removeClass("is-open");
} else {
$(".has-submenu").removeClass("is-open");
$(this).addClass("is-open");
}
});
});
は、コードのcodepen例です:https://codepen.io/anon/pen/EwMjrz
[HierはJavaScriptのみの良い例です](https://codepen.io/Ferhad/pen/OxZWNm) –
@FerhadOthman解決策は機能しません。 divの外側をクリックすると、最初のメニュー項目(この場合は「記事」)が折りたたまれますが、後続のメニュー項目は影響を受けません。 https://codepen.io/hioioasd90/pen/qPwBEW – 109881
行13 'var要素= document.querySelector("。has-submenu.is-open ");'セレクタはクラスがオープンである必要があります –