Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.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 汉堡包菜单只对一个链接有效_Javascript_Php_Jquery_Html_Css - Fatal编程技术网

Javascript 汉堡包菜单只对一个链接有效

Javascript 汉堡包菜单只对一个链接有效,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,我正在为我的网站制作汉堡包菜单,在我点击一个链接之前,一切正常。之后,它将带我到新的页面,但点击菜单将什么也做不了。刷新页面解决了这个问题,因此我尝试添加window.location.reload,它在chrome中运行良好,但不会跟随Safari和Firefox中的链接 这是菜单的代码: HTML和PHP <div class="hamburger-menu"> <div id="nav-icon3"> <span

我正在为我的网站制作汉堡包菜单,在我点击一个链接之前,一切正常。之后,它将带我到新的页面,但点击菜单将什么也做不了。刷新页面解决了这个问题,因此我尝试添加window.location.reload,它在chrome中运行良好,但不会跟随Safari和Firefox中的链接

这是菜单的代码:

HTML和PHP

    <div class="hamburger-menu">
        <div id="nav-icon3">
            <span></span> <span></span> <span></span> <span></span>
        </div>
    </div>
    <nav class="navigation column displaynone" id="nav" role="navigation">
        <ul class="menu">
            <li class="menu-item is-active"><a
                href="http://localhost:8888/general-economy">Home</a></li>
            <li class="menu-item"><a
                href="http://localhost:8888/general-economy/search">Search</a></li>
            <li class="menu-item"><a
                href="http://localhost:8888/general-economy/about">About Us</a></li>
            <li class="menu-item"><a
                href="http://localhost:8888/general-economy/subscribe">Subscribe</a>
            </li>
        </ul>

    </nav>
JQUERY

$(document).ready(function(){
    $('#nav-icon3').click(function(){
        $(this).toggleClass('open');
    });

  $('#nav-icon3').click(function() {
    $('#nav').toggleClass('displaynone');
    $('body').toggleClass('only-menu');

   });
});

当您单击
#nav-icon3
时,这两个函数都被炒了,似乎您的
toggleClass
正在与自身抗争。以下各项应起作用:

$(document).ready(function(){
    $('#nav-icon3').click(function(){
        $(this).toggleClass('open');
        $('#nav').toggleClass('displaynone');
        $('body').toggleClass('only-menu');
    })
});

啊,我道歉。我花了很长时间在网上寻找解决方案,我刚刚发现问题在于我加载的其他javascript库与代码冲突

您还可以粘贴由PHP生成的结果HTML吗?您的javascript缺少document.ready“}”的右括号添加了由PHP生成的HTML,并在javascriptI中添加了最后的方括号。我将所有内容压缩为一次点击,就像下面的代码一样,但它仍然不起作用。你能删除这篇文章吗?不会让我,因为人们已经对它进行了评论
$(document).ready(function(){
    $('#nav-icon3').click(function(){
        $(this).toggleClass('open');
        $('#nav').toggleClass('displaynone');
        $('body').toggleClass('only-menu');
    })
});