0
クラスをボディに追加することで、「メニュー」を閉じるアンカーリンクを取得しようとしています。アンカーされたリンクのスクロールがメニューのクローズ機能を妨害する
問題は、メニューにナビゲーションの一部としてリンクが固定されていることです。クラスをチェックし、アンカーされたリンクに行く前にtoggleClassを実行する関数を追加しようとしています。
<script type="text/javascript">
$(document).ready(function(e) {
// Working JS that Identifies the Class and Adds the "menu_open" or toggles to Subtract
$(".menu, .arrow1, .menuAccountAccess").on("click", function() {
$(this).toggleClass("active");
$('body').toggleClass('menu_open');
});
// The Main Navigation has some anchored links and the below code does not work as we also have a # link scroll code
$(".NavigationAnchoredLinkClass").on("click", function() {
$('body').toggleClass('menu_open');
});
// Scroll function for Anchored Links
$(function() {
$('a[href*="#"]:not([href="#"])').click(function() {
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
if (target.length) {
$('html, body').animate({
scrollTop: target.offset().top - 60
}, 1000);
return false;
}
}
});
});
});
</script>
<body class="">
<p>
Anchored Links work fine with a <a href="#anchoredlink">Link</a>
</p>
<ul>
<li class="NavigationAnchoredLinkClass">
<a href="siteurl/#achoredlink">Link</a>
</li>
</ul>
</body>
あなたはmenu_openのようなコードに欠けている要素がほとんどないので、HTMLコードを完成させてください。 –