私はJQueryで非常に基本的なメニューをコーディングしています。私の基本的な考え方は、ボタンをクリックすると、メニューがポップアップしてほしいということです。そのメニューがポップアップすると、1)メニューが表示され、2)ボタンが閉じることができるように新しいクラスが与えられます。 JQueryがこの新しいクラスを完全に無視しているようなものです。何ですか?ドロップダウンメニューが閉じていませんか?
http://codepen.io/asilhavy/pen/apjvYo?editors=1010
$(".dropdown").click(function() {
\t $(".drop-item").addClass("show").removeClass("hide");
\t $(".fa-drop").addClass("fa-angle-double-down").removeClass("fa-angle-double-right");
\t $(".dropdown").addClass("close-dropdown").removeClass("dropdown");
});
$(".close-dropdown").click(function() {
\t $(".drop-item").removeClass("show").addClass("hide");
\t $(".fa-drop").removeClass("fa-angle-double-down").addClass("fa-angle-double-right");
\t $(".close-dropdown").removeClass("close-dropdown").addClass("dropdown");
});
ul {
list-style: none;
}
.hide {
display: none;
}
.show {
display: block;
}
<script src="https://use.fontawesome.com/f19ebae6ca.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="popup">
\t <li class="dropdown"><i class="fa fa-drop fa-angle-double-right" aria-hidden="true"></i> Click to Dropdown</li>
\t <li><a href="#" class="drop-item hide">Item 1</a></li>
\t <li><a href="#" class="drop-item hide">Item 2</a></li>
\t <li><a href="#" class="drop-item hide">Item 3</a></li>
\t <li><a href="#" class="drop-item hide">Item 4</a></li>
</ul>