我创建了一个导航栏,当屏幕尺寸低于某个宽度时会显示一个按钮;就像你在许多其他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>
答案 0 :(得分:0)
你的代码似乎工作正常,在click上生成的类是一个bootstrap类,在使用toogling之后它会消失。
你可以做什么把外部资源js文件放在首先是jquery,bootstrap然后你的自定义js文件,可能是这些js文件之间存在冲突,这就是为什么toogle函数无法正常工作
您可以通过维护以下序列来添加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">