Javascript jQuery检查是否单击了链接
我使用jQuery创建了一个汉堡菜单。我还创建了另一个jQuery函数,当单击链接时,它会自动将页面向下滚动到锚定位置。现在我需要burger菜单函数在单击auto_close类链接时关闭Javascript jQuery检查是否单击了链接,javascript,jquery,Javascript,Jquery,我使用jQuery创建了一个汉堡菜单。我还创建了另一个jQuery函数,当单击链接时,它会自动将页面向下滚动到锚定位置。现在我需要burger菜单函数在单击auto_close类链接时关闭 <nav> <img class="logo_animated" src="images/popsies.svg"> <ul id="height"> <li class="auto_c
<nav>
<img class="logo_animated" src="images/popsies.svg">
<ul id="height">
<li class="auto_close"><a href="#welcomeAnchor">Welcome</a></li>
<li class="auto_close"><a href="#menuAnchor">Menu</a></li>
<li class="auto_close"><a href="#timesAnchor">Opening Times</a></li>
<li id="mob_icons">
<a href=""><i class="fa fa-facebook-official fa-2x" aria-hidden="true"></i></a>
<a href=""><i class="fa fa-twitter-square fa-2x" aria-hidden="true"></i></a>
</li>
<li class="mob_contact">Tel: 0113 0000000</li>
<li class="mob_contact">Email: example@yahoo.co.uk</li>
</ul>
</nav>
$("#height li a").click(function() {
$(".burger-button").removeClass("show");
});
$('.auto_close').click(function(){
$(".burger-button").trigger('click')
})
假设
show
类显示burger菜单,如果单击了a
元素,则将其删除
<nav>
<img class="logo_animated" src="images/popsies.svg">
<ul id="height">
<li class="auto_close"><a href="#welcomeAnchor">Welcome</a></li>
<li class="auto_close"><a href="#menuAnchor">Menu</a></li>
<li class="auto_close"><a href="#timesAnchor">Opening Times</a></li>
<li id="mob_icons">
<a href=""><i class="fa fa-facebook-official fa-2x" aria-hidden="true"></i></a>
<a href=""><i class="fa fa-twitter-square fa-2x" aria-hidden="true"></i></a>
</li>
<li class="mob_contact">Tel: 0113 0000000</li>
<li class="mob_contact">Email: example@yahoo.co.uk</li>
</ul>
</nav>
$("#height li a").click(function() {
$(".burger-button").removeClass("show");
});
$('.auto_close').click(function(){
$(".burger-button").trigger('click')
})
由于您使用的是切换,您只需添加对
的引用即可。自动关闭链接,如下所示:
$(document).ready(function(){
$(".burger-button,.auto_close a").click(function(){
$("nav").toggleClass("show");
$("body").toggleClass("no_scroll");
});
});
最简单的方法是,如果你的汉堡总是打开的,当你的链接被点击时
<nav>
<img class="logo_animated" src="images/popsies.svg">
<ul id="height">
<li class="auto_close"><a href="#welcomeAnchor">Welcome</a></li>
<li class="auto_close"><a href="#menuAnchor">Menu</a></li>
<li class="auto_close"><a href="#timesAnchor">Opening Times</a></li>
<li id="mob_icons">
<a href=""><i class="fa fa-facebook-official fa-2x" aria-hidden="true"></i></a>
<a href=""><i class="fa fa-twitter-square fa-2x" aria-hidden="true"></i></a>
</li>
<li class="mob_contact">Tel: 0113 0000000</li>
<li class="mob_contact">Email: example@yahoo.co.uk</li>
</ul>
</nav>
$("#height li a").click(function() {
$(".burger-button").removeClass("show");
});
$('.auto_close').click(function(){
$(".burger-button").trigger('click')
})
否则,如果不能确定汉堡是否总是打开的,只需删除类即可
$('.auto_close').click(function(){
$("nav").removeClass("show");
$("body").removeClass("no_scroll");
});
谢谢,当它允许我的时候,我会选择这个作为答案。你应该注意,每次点击这些按钮时,所有的东西都会被切换。您可能希望有两个单独的函数来显示或隐藏。@Reece但是。。。这个代码不会改变任何东西。它仍然不会隐藏汉堡,如果是,它只会切换它,这意味着每次单击都会隐藏或取消隐藏它。“我使用jQuery创建了一个汉堡菜单。我还创建了另一个jQuery函数,当单击链接时,它会自动将页面向下滚动到锚定位置。”HTML中没有.burger按钮
,jQuery与HTML完全不匹配。将代码放在一个代码段中,并对其进行测试。顺便说一句,我还没有否决。