$ (...). popover не является функцией

Я просмотрел довольно много сообщений, посвященных этой проблеме, но ни один из них, похоже, не решил мою проблему.

Я импортировал файлы jQuery и Bootstrap js в правильном порядке. Такие вещи, как панели ботстрапа, отлично работают для меня.

Мой script импорт выглядит следующим образом:

   <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">

Однако, когда я пытаюсь

 $('[data-toggle="popover"]').popover();

В консоли Chrome появляется следующее сообщение:

 Uncaught TypeError: $(...).popover is not a function

Сначала я подумал, что, возможно, popover не был включен в CDN-копию, поэтому я пошел дальше и загрузил локальную копию со всеми включенными здесь плагинами:

http://getbootstrap.com/customize/

и получил то же сообщение об ошибке (переназначил теги script в сторону локального файла js).

Выполнение поиска для "popover" файла bootstrap.min.js:

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

Показывает, что popover включен в файл.

Ответы

Ответ 1

Поскольку вы заявили, что правильно включили jQuery и другие библиотеки, 1 возможным случаем может быть несколько экземпляров jQuery на странице.

Итак, основываясь на используемой серверной технологии, найдите дублируемую версию jQuery, и если ее удалили (если не нужно, то еще нужно подумать о noConflict() use).

В случае дублированных экземпляров jQuery проблема в версии jQuery, к которой подключен плагин, может отличаться от той, к которой вы обращаетесь, чтобы использовать плагин в этой точке, плагин не будет найден.

Ответ 2

Порядок включения bootstrap.js и jquery.js имеет значение. Включите jquery.js ПЕРЕД bootstrap.js

Ответ 3

Имел ту же проблему и проверял версию jquery. Переход на v1.12 помог мне