Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery检查是否单击了链接_Javascript_Jquery - Fatal编程技术网

Javascript jQuery检查是否单击了链接

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

我使用jQuery创建了一个汉堡菜单。我还创建了另一个jQuery函数,当单击链接时,它会自动将页面向下滚动到锚定位置。现在我需要burger菜单函数在单击auto_close类链接时关闭

<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完全不匹配。将代码放在一个代码段中,并对其进行测试。顺便说一句,我还没有否决。