私はこのことを正しく行っているかどうかはわかりません。私はオープンとクローズを切り替えるメニューを持っています。メニューがhasClass("open");
の場合、ボタンが表示されます。 class open
がなくなればクラスを削除したいと思います。要素がクラスを追加するクラスに別の要素を持っている場合
ここはHTMLの部分です。 nav
、a
、closed
:
<nav>
<a class="closed"><i class="fa fa-bars"></i>Menu</a>
<ul>
<li>Menu items</li>
</ul>
<div class="close-btn">
<i class="fa fa-times" aria-hidden="true"></i>
</div>
</nav>
HTMLが働くので、これはその重要ではありません、重要な部分は、要素があるということです。
jQueryの部分はここにあります。
$(document).ready(function(jQuery) {
if ($("nav a").hasClass("open")) {
$(".close-btn").addClass('show-me-the-button');
} else {
$(".close-btn").removeClass('show-me-the-button');
}
});
しかし、これは機能しません。私はstackoverflowを検索しましたが、すべて私にこのコードを与えました...なぜそれが動作していないのか分かりません。私はスクリプトのエラーを取得...任意のヘルプ?
メニューの 'open' /' close'クラスをトグルするイベントハンドラ内でコードを実行する必要があります –
HTMLに '.close-btn'クラスの要素がありません。 – connexo
こちらの情報が必要な場合もありますので、編集してください。 アイテムをクリックするか、ページの読み込み時にのみ開いたり閉じたりしていますか? 変更するときに "検出"しようとしていますか?そのような場合は、別のタイプのイベントを作成する必要があります。 –