为什么这个 Bootstrap 下拉菜单示例无法工作?

13

我只是在尝试 Bootstrap 文档中的示例,但它似乎无法正常工作。我只得到了普通的 HTML。这是我的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="bootstrap.css" type="text/css">
<script type="text/javascript" src="http://twitter.github.com/bootstrap/assets/js/bootstrap-dropdown.js"></script>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>

$('.dropdown-toggle').dropdown();


</script>
<title>Dropdown</title>
</head>

<ul class="nav nav-pills">
  <li class="active"><a href="#">Regular link</a></li>
  <li class="dropdown" id="menu1">
    <a class="dropdown-toggle" data-toggle="dropdown" href="#menu1">
      Dropdown
      <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
      <li><a href="#">Action</a></li>
      <li><a href="#">Another action</a></li>
      <li><a href="#">Something else here</a></li>
      <li class="divider"></li>
      <li><a href="#">Separated link</a></li>
    </ul>
  </li>
  ...
</ul>

</body>
</html>

有人看到问题了吗?谢谢。


你检查过是否首先存在bootstrap.css文件了吗? - Andres Ilich
是的,我正在使用Dreamweaver,我可以看到是否存在与某个文件链接的问题。但是现在没有任何问题。 - Loolooii
1
JS的顺序是错误的,我已在下面发布了一个答案。JQuery应该放在第一位,Bootstrap插件放在第二位,在插件设置正确时,甚至不需要调用下拉菜单。 - Andres Ilich
4个回答

19

我看到您的标记有两个问题。

首先,您将Bootstrap插件放在jQuery插件之前。 jQuery先,Bootstrap插件后。

其次,您使用的DOCTYPE不受Bootstrap支持,必须使用HTML5的DOCTYPE:

<!DOCTYPE html>

你能提供一下哪里说Bootstrap只能与HTML 5一起使用的信息吗? - Jonathan Wood
2
@JonathanWood,文档页面上就有:http://getbootstrap.com/2.3.2/scaffolding.html - Andres Ilich

5
我认为在引入Bootstrap JavaScript文件之前应该先引入jquery.js。

-1

我看不到你的<body>开头标签


-3

工作演示 http://jsfiddle.net/jyy96/2/ 或者 http://jsfiddle.net/jyy96/2/show 或者 http://jsfiddle.net/jyy96/

编辑 2015年7月9日 - 修复在这里: http://jsfiddle.net/jyy96/792/ 或者 http://jsfiddle.net/jyy96/792/show/

==========================================

看起来bootstrapcdn是最受欢迎的选择,但对于那些想要使用cdnjs.com的人来说,他们拥有“所有文件”并且保持它们的最新状态(版本为2.0.0到2.1.1)。
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/css/bootstrap.css
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/css/bootstrap.min.css
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/css/bootstrap-responsive.css
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/css/bootstrap-responsive.min.css
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/bootstrap.js
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/bootstrap.min.js
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/img/glyphicons-halflings-white.png
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/img/glyphicons-halflings.png

==========================================

希望这能帮到你。

脚本

  <script type="text/javascript" src="/js/lib/bootstrap-2.0.2.js"></script>


  <link rel="stylesheet" type="text/css" href="http://twitter.github.com/bootstrap/assets/css/bootstrap.css">

Jquery代码

   $('.dropdown-toggle').dropdown();

[1] https://github.com/twbs/bootstrap/issues/1679


@JackalopeZero 谢谢兄弟 :)) :已修复:http://jsfiddle.net/jyy96/792/,请参见上面更新的帖子。 - Tats_innit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接