JqueryのLIナビゲーションでの「アクティブ」クラスの削除と追加はpreventDefaultで機能しますが、リンクは機能しなくなりました
Jqueryがliノードへのアクティブクラスの追加を削除して機能しない
現在のページのナビゲーションアイテムを強調表示するために、アクティブクラスを削除してliに追加することは本当に基本的なことですが、それを機能させることができませんでした。
e.preventDefault()を使用して機能させる必要があることがわかりましたが、リンクは機能しませんが、強調表示されたナビゲーションアイテムは機能します。PreventDefault()を削除すると、ナビゲートされますが、強調表示されません。私のナビゲーションはheader.phpインクルードファイルにあります。これが私が持っているものです:
<ul class="myNav">
<li><a href="index.php">Home</a></li>
<li><a href="portfolio.php">Portfolio</a></li>
<li><a href="about.php">About</a></li>
<li><a href="contact.php">Contact</a></li>
</ul>
$('.myNav li a').click(function (e)
{
e.preventDefault();
$('.myNav li').siblings().removeClass('active');
$(this).parent().addClass('active');
//var url = $(this).attr("href");
//window.location = url;
});
クリックしたURLにページを送信しようとしましたが、正しいページが読み込まれますが、クラスが削除されます。これを解決したいのですが、なぜ正しく動作しないのかも理解したいと思います。