Javascript $(…)。popover不是一个函数

Javascript $(…)。popover不是一个函数,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,我已经浏览了很多关于这个问题的帖子,但是没有一个能解决我的问题 我已经按照正确的顺序导入了jQuery和Bootstrap js文件。像引导面板这样的东西对我来说非常好 我的脚本导入如下所示: <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap

我已经浏览了很多关于这个问题的帖子,但是没有一个能解决我的问题

我已经按照正确的顺序导入了jQuery和Bootstrap js文件。像引导面板这样的东西对我来说非常好

我的脚本导入如下所示:

   <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
   <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
   <link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet">
我在Chrome控制台中收到以下消息:

 Uncaught TypeError: $(...).popover is not a function
起初,我认为可能popover没有包含在CDN的副本中,所以我继续下载了一份本地副本,其中包含了此处包含的所有插件:

http://getbootstrap.com/customize/
并得到相同的错误消息(将脚本标记重新指向本地js文件)

搜索bootstrap.min.js文件中的“popover”:

http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js

显示文件中包含popover。

由于您已声明正确包含了jQuery和其他库,因此有一种可能的情况是页面中可能有多个jQuery实例

因此,根据使用的服务器技术,搜索jQuery的重复版本,如果有,则删除它们(如果不需要,则必须考虑使用)

如果存在重复的jQuery实例,问题在于插件所连接的jQuery版本可能与您正在访问以使用插件的版本不同,此时将找不到插件


    • 也有同样的问题,并检查了jquery版本。迁移到v1.12帮助我改变了包含bootstrap.js和jquery.js的顺序。在bootstrap.js之前包含jquery.js

      对我有效的是调用$.noConflict(),它返回了$的控制权。 这是因为其他一些JavaScript库使用$作为函数或变量名,就像jQuery一样。在jQuery初始化过程中,保存了一些$saved的旧引用。noConflict()恢复它们

      $noConflict();
      jQuery(document).ready(function ($) {
      $("#id").popover('hide');
      });
      

      这是由于引导的版本不同而导致的 在这种情况下,请使用与引导程序版本相同的脚本

      在其他情况下,不建议使用jquery。安装使用高级Css Js


      这也是因为最新的bootstrap无法运行的原因。

      几个小时后,我发现我忘记将bootstrap.js文件附加到我的页面;)

      jquery是否有多个实例只要包含引导js,并删除jquery,然后再试一次。@Tushar不,不会。如果在引导JS之后包含另一个jQuery,
      $
      将被重新定义,
      $.fn.popover
      将不存在。@SergueiFedorov您可以在浏览器控制台中尝试
      jQuery.fn.jQuery
      并交叉检查您导入的版本吗?这也是像require.JS这样的东西可以派上用场的地方,为了确保即使多次加载也能获得正确版本的库。很酷,对于那些使用AngularJS和popover.js的用户,请使用
      angular.element
      而不是
      $
      这应该是对答案或问题的评论。向上投票给你,这样你会更接近“评论”权限。这向我解决了这个问题,同时也删除了控制台中刚刚显示的另一个错误,上面写着“Uncaught TypeError:无法读取未定义的属性'fn'。这肯定符合回答条件,因为它解决了我的错误。谢谢@Samir Kulkarni。请检查您答案的拼写:)
      $noConflict();
      jQuery(document).ready(function ($) {
      $("#id").popover('hide');
      });