第二次单击菜单切换不起作用

时间:2016-07-14 10:49:43

标签: javascript jquery html menu toggle

首先点击打开菜单工作正常但第二个工作没有效果。我自己不是编码员,但我总是试图自己解决问题。我已经搜索了很多答案,但我甚至都没有解决这个问题。非常感谢您的帮助

HTML

                                关于         服务         客户端         联系          
<header id="masthead" class="site-header" role="banner" >
    <div style="width:33%"><i class="fa fa-bars menu-button" aria-hidden="true" onclick="openbox();" style="position:fixed;cursor:pointer;"></i></div>
    <div class="site-branding" style="width:33%">
        <img id="tempdcenterlogosmall" class=" " src="http://oneandother.london/wp-content/uploads/2016/07/logo-150x150.png" style="text-align:center; width:50px; <?php echo $tempdcenterlogosmall; ?> position:fixed;" />

的Javascript

function openbox(){
        var d = document.getElementById("centralboxdiv");
        d.classList.remove("fadeOut");
        d.classList.remove("animated");
        d.className += " fadeIn animated";
        d.style.display = "flex";
        var d2 = document.getElementById("masthead"); 
        d2.style.display = "none";
        var d3 = document.getElementById("maincenterlogo"); 
        d3.style.display = "none";

        var d4 = document.getElementById("tempdcenterlogosmall");
        d4.classList.remove("fadeInUp");
        d4.classList.remove("animated");
        var d5 = document.getElementById("maincenterlogo");
        d5.classList.remove("fadeOutUp");
        d5.classList.remove("animated");
    }
    function closebox(){
        var d = document.getElementById("centralboxdiv");
        d.classList.remove("fadeIn");
        //d.classList.remove("animated");
        d.className += " fadeOut ";

        var d2 = document.getElementById("masthead"); 
        d2.style.display = "flex";
        var d3 = document.getElementById("maincenterlogo"); 
        d3.style.display = "flex";
        //d.style.display = "none";
    }

谢谢

1 个答案:

答案 0 :(得分:0)

似乎在您的HTML中,菜单切换永远不会有机会调用closebox函数。

我建议您使用单个切换功能(如jQuery中的功能)来处理切换操作或一些CSS技巧。

如果您坚持使用一个开放功能和一个关闭功能,则可以尝试addEventListener