为什么我的下拉菜单无法在bootstrap中运行?

时间:2015-08-12 10:32:09

标签: html css html5 twitter-bootstrap css3

代码(In head):

 <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" media="all" />
        <link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css" media="all" />
        <link rel="stylesheet" type="text/css" href="style.css" media="all" />
        <script type="text/javascript" src="js/boootstrap.min.js"></script>
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
        <title></title>
    </head>

代码(正文):

<div class="dropdown">
        <button class="btn btn-default dropdown-toggle" type="button" id="d" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
            Dropdown Menu
        <span class="caret"></span>
        </button>
        <ul class="dropdown-menu" aria-labelledby="d">
            <li><a href="#">Dropdown</a></li>
            <li><a href="#">Dropdown</a></li>
            <li><a href="#">Dropdown</a></li>
            <li><a href="#">Dropdown</a></li>
        </ul>
    </div>

我从stackoverflow以多种方式查看并试图解决这个问题。但没有什么对我有用。这段代码在https://jsfiddle.net/DTcHh/10972/中工作但是当我用浏览器打开它时它无效。

4 个答案:

答案 0 :(得分:3)

@ AlexG的回答是正确的(我没有足够的声誉来发表评论)。

bootstrap.js中的第一行是检查jquery

if(typeof jQuery==='undefined'){throw new Error('Bootstrap\'s JavaScript requires jQuery')}

因为你在bootstrap之后加载jquery,它会抛出异常。因此,即使这不能通过下拉菜单解决您的问题,您仍然必须首先包含它。

答案 1 :(得分:2)

var unique=data.filter(function(item,i,a){
    return i==data.indexOf(item.type.name);
});

这似乎是问题所在。在bootstrap之前包含jquery

<script type="text/javascript" src="js/boootstrap.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>

jQuery after Bootstrap

<强> jQuery before Bootstrap

答案 2 :(得分:0)

问题已解决:

1)出现了控制台错误。(由Abhishek Ghosh解决)

2)jquery脚本应该在bootstrap之前(由AlexG解决)

答案 3 :(得分:0)

我测试了你的代码,发现了一个控制台错误。然后我尝试使用下面的CDN'并且它有效。使用这些CDN,它会正常工作

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">

<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js">    </script>

<!-- Latest compiled JavaScript -->
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js">    </script>