Hallo,
dein ganzer JS Code sieht ja wie folgt aus
$("#mobile-icon").click(function(){
$("nav").toggle();
});
$('nav a[href^="#"]').on('click', function (e) {
e.preventDefault();
$(document).off("scroll");
$('a').each(function () {
$(this).removeClass('active');
})
$(this).addClass('active');
var target = this.hash;
$target = $(target);
$('html, body').stop().animate({
'scrollTop': $target.offset().top+2
}, 500, 'swing', function () {
window.location.hash = target;
$(document).on("scroll", onScroll);
});
});
});
Und dein HTML lautet
<a id="mobile-icon" href="#"><div class="mobile-icon-fest"><span></span></div></a>
<nav>
<ul id="menu">
<li><a href="#1" class="active"></a></li>
<li><a href="#2"></a></li>
<li><a href="#3"></a></li>
<li><a href="#4"></a></li>
<li><a href="#5"></a></li>
<li><a href="#6">V</a></li>
<li><a href="#7"></a></li>
</ul>
</nav>
Vielleicht wäre es auch möglich, dass man dem JS Code einfach eine Zeile hinzufügt welche dafür sorgt, dass <nav> wieder ausgeblendet wird, sobald man auf einen <li> Punkt innerhalb von <nav> geklickt hat.
Problem ist, ich kenne mich mit JavaScript nicht wirklich gut aus :) Vielleicht kann sich ja jemand melden, der von JS etwas mehr Ahnung hat :)