BootStrap" navbar-toggle"课程将打开,但不会关闭

时间:2017-09-13 19:22:00

标签: twitter-bootstrap-3

我创建了一个导航栏,当屏幕尺寸低于某个宽度时会显示一个按钮;就像你在许多其他Bootstrap方面看到的那样。显示并单击按钮时,导航链接将显示在垂直下拉列表中,该下拉列表按预期工作。

当我尝试通过重新点击链接关闭下拉列表时出现问题。无论我做什么,它仍然是开放的。在检查实际网站后,它看起来像是在课程中。在第一次单击时添加,但在后续单击时不会删除(切换功能)。我对如何解决这个问题感到茫然,因为我相信我的链接在标题中是正确的。有没有人有这个问题的经验?

编辑:作为澄清,我理解我可以在我的javascript文档中编写一个解决方法,但如果有更明显的解决方案,我不想走这条路。感谢您帮助初学者。

 <html>
    <head>
    <meta charset="utf-8">
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />  
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <link href="<?php echo get_bloginfo('template_directory'); ?>/javascipt/main.js">  <!-- personal JS Script (Not Sure which is better) Icons -->
    <link href="<?php echo get_bloginfo('template_directory'); ?>/font-awesome-4.7.0/css/font-awesome.css" rel="stylesheet">  <!-- Font Awesome Icons -->
    <link href="<?php echo get_bloginfo('template_directory'); ?>/style.css" rel="stylesheet">  <!-- Personal CSS Stylesheet -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script src="<?php echo get_bloginfo('template_directory'); ?>/javascript/main.js"></script>  <!-- Personal JS Script -->
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">
    </script> <!-- Bootstrap Script -->
<title><?echo get_bloginfo( 'name' ); ?></title>
<?php wp_head(); ?>
</head>

    <body>
    <div class="main contain">
    <nav class="navbar navbar-inverse hold-top">
              <div class="container-fluid">
                <div class="navbar-header">
                  <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>                        
                  </button>
                  <a class="navbar-brand nav-logo2" href="<?php echo get_bloginfo( 'wpurl' ); ?>"></a>
                </div>
                <div class="collapse navbar-collapse pull-right header-text" id="myNavbar">
                  <ul class="nav navbar-nav">
                    <li class="active"><a href="#">Home</a></li>
                    <li class="dropdown">
                      <a class="dropdown-toggle" data-toggle="dropdown" href="#">Services<span class="caret"></span></a>
                      <ul class="dropdown-menu">
                        <li><a href="#">Marketing Campaigns</a></li>
                        <li><a href="#">Donor Activation</a></li>
                        <li><a href="#">Lobbying</a></li>
                      </ul>
                    </li>
                    <li><a href="#">Our Team</a></li>
                    <li><a href="#">Contact Us</a></li>
                  </ul>
                  <ul class="nav navbar-nav navbar-right">
                    <li><a href="#"><span class="glyphicon glyphicon-user">
    </span> Sign Up</a></li>
                    <li><a href="#"><span class="glyphicon glyphicon-log-in">
    </span> Login</a></li>
                  </ul>
                </div>
              </div>
        </nav>

1 个答案:

答案 0 :(得分:0)

你的代码似乎工作正常,在click上生成的类是一个bootstrap类,在使用toogling之后它会消失。

你可以做什么把外部资源js文件放在首先是jquery,bootstrap然后你的自定义js文件,可能是这些js文件之间存在冲突,这就是为什么too​​gle函数无法正常工作

您可以通过维护以下序列来添加js参考文件

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">
<link href="<?php echo get_bloginfo('template_directory'); ?>/javascipt/main.js"> 
<script src="<?php echo get_bloginfo('template_directory'); ?>/javascript/main.js">