【问题标题】:Bootstrap pop-over not loading ReferenceError: jQuery is not defined引导弹出未加载 ReferenceError: jQuery is not defined
【发布时间】:2013-03-21 01:37:08
【问题描述】:

多年来,我一直在尝试各种不同的解决方案,但我无法弄清楚为什么我的引导弹出窗口不起作用。

我得到一个: ReferenceError: $ 未定义 对于

$(function ()

这是我想将鼠标悬停在上面以显示弹出窗口的按钮:

<div class="span3 offset2">
    <a `href="http://automationrecruitment.com.au/apply/">
        <button 
            class="btn btn-large btn-block btn-primary" 
            id="lefty" 
            rel="popover" 
            data-content="this is the content to show" 
            style="min-width:116px; margin:5px;" >
                Apply
        </button>
    </a>

这是我附上的脚本:

<script language="JavaScript" type="text/javascript" src="css/bootstrap/js/jquery-1.8.3.min.js"></script>  
<script type="text/javascript" src="/css/bootstrap/js/bootstrap-popover.js"></script>
<script type="text/javascript" src="/css/bootstrap/js/bootstrap-tooltip.js"></script>

这是函数调用:

$(function ()  
{ 
    $("#lefty").popover();  
});  

如果您认为它们可能会发生冲突,我还附加了其他引导程序 j.s

【问题讨论】:

  • 只是检查一下,您在调用$(function ()... 之前是否包含了 jQuery 库,并且您的参考实际上是正确的?
  • 另外&lt;script language="JavaScript" 也不正确。坚持type="text/javascript",或者如果使用HTML5,只需&lt;script src="..."&gt;&lt;/script&gt;

标签: jquery twitter-bootstrap defined referenceerror


【解决方案1】:

指定的语言(区分大小写)不正确。它导致这不会被解释为 javascript。错误:

<script language="JavaScript" type="text/javascript" src="css/bootstrap/js/jquery-1.8.3.min.js"></script>

换成我最喜欢的:

<script src="css/bootstrap/js/jquery-1.8.3.min.js"></script>

<script type="text/javascript" src="css/bootstrap/js/jquery-1.8.3.min.js"></script>

<script language="javascript" type="text/javascript" src="css/bootstrap/js/jquery-1.8.3.min.js"></script>

它会成功地被解释为javascript并定义jQuery/$

【讨论】:

  • 嗨,我看不出我做错了什么。至少现在它正在加载库并且调用在库之后。但我得到一个 ReferenceError: $ is not defined 但我知道它是什么。
【解决方案2】:

您必须在 引用 bootstrap.js 之前引用 jquery。 像这样:

<!-- include jQuery first!!! -->
<script src="/lib/jquery/jquery-1.10.2.min.js"></script>

<script src="/lib/bt/js/bootstrap.js"></script>

【讨论】:

    【解决方案3】:

    在Script标签中将defer属性放在type属性之前,defer='defer'在每个脚本中一个一个地渲染页面并检查弹出功能。

    有些时候功能在 js 中写入相互冲突或不使用更新的插件文件。所以为了让两个或多个文件不相互冲突,请将 defer 属性放在 script 标签中。

    我希望它对你有用。

    谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-22
      • 2020-05-24
      • 2018-07-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-27
      • 2017-02-18
      • 2021-12-10
      相关资源
      最近更新 更多