2013-05-18 20 views
-1

我有以下的测试代码:引导崩溃的js文件给错误

<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    <title>Ti Productions</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <meta name="description" content=""> 
    <meta name="author" content=""> 
    <!-- Le styles --> 
    <link href="assets/css/bootstrap.css" rel="stylesheet"> 
    <style type="text/css"> 
     body { 
     padding-top: 60px; 
     padding-bottom: 40px; 
     } 
    </style> 
    <link href="assets/css/bootstrap-responsive.css" rel="stylesheet"> 
    </head> 
<body> 

    <div class="navbar"> 
    <div class="navbar-inner"> 
    <div class="container"> 

    <!-- .btn-navbar is used as the toggle for collapsed navbar content --> 
    <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> 
    <span class="icon-bar"></span> 
    <span class="icon-bar"></span> 
    <span class="icon-bar"></span> 
    </a> 

    <!-- Be sure to leave the brand out there if you want it shown --> 
    <a class="brand" href="#">Project name</a> 

    <!-- Everything you want hidden at 940px or less, place within here --> 
    <div class="nav-collapse collapse"> 
    <!-- .nav, .navbar-search, .navbar-form, etc --> 

       <ul class="nav"> 
       <li><a href="">home</a></li> 
       <li><a href="">about</a></li> 
       <li><a href="">help</a></li> 
      </ul> 
    </div> 

    </div> 
    </div> 
    </div> 

    <script src="assets/js/bootstrap-collapse.js"></script> 
    </body> 
</html> 

基本上,我想考出可折叠式菜单如下所示:

http://twitter.github.io/bootstrap/components.html#navbar

我下载按照说明使用boostrap响应的css文件,以及collapse.js文件。 页面加载文件,显示菜单。然后,当我缩小浏览器的大小,菜单崩溃...并出现按钮。但我无法打开菜单。每当我点击按钮,显示收缩的菜单,我得到以下错误:

-- 
[19:08:40.348] TypeError: $ is undefined @ 
https://myserver/mysite/assets/js/bootstrap-collapse.js:126 

行文件126看起来是这样的:

$.fn.collapse = function (option) { 

我不知道我是什么做错了。任何猜测,将不胜感激。

编辑1

我在丢失的jquery.js文件添加,但尚未解决的问题。 该页面的底部现在包括如下:

<script src="assets/js/jquery.js"></script> 
<script src="assets/js/bootstrap-collapse.js"></script> 
+0

你包括正确的顺序的文件,即bootstrap.js然后响应,然后collapse.js? – baig772

+0

baig772。感谢您的评论。是的,我已经按照您提到的相同顺序添加了... – dot

回答

1

$是一个jQuery功能,需要包括引导-collapse.js之前。

试试这个序列

<script src="assets/js/jquery.js"></script> 
<script src="assets/js/bootstrap-collapse.js"></script> 
+0

凯恩,我试过了,但它仍然无法正常工作。在我的文章中查看“编辑1”。谢谢。 – dot

+0

您确定您的资产位于名为assets的子文件夹中吗?这可能是添加一个前导斜杠'/ assets'的简单方法吗? – Kane

1

检查,如果jQuery是正确加载与否。在Firebug或控制台中尝试运行“$”。如果在自定义脚本之前未加载jquery,或者它们与其他库使用'$'(如原型)冲突,则会出现此类错误。