Bootstrap JavaScript требует jQuery версии 1.9.1 или новее, но ниже версии 3
Введение
Я работаю с фреймворком bootstrap. В настоящее время я работаю над "вкладками Bootstrap" (скрыть/показать). Я использую bootstrap версии 3 и jQuery версии 3.0.2.
Проблема
Мои вкладки не работают, если я не загружаю jquery версии менее 1.6. Но тогда проблема ajax с jquery меньше 1.6. Консоль Chrome дает мне эту ошибку.
bootstrap.min.js: 6 Неиспользуемая ошибка: Bootstrap JavaScript требует jQuery версии 1.9.1 или выше, но ниже версии 3
Я пробовал разные методы резервного копирования, но не мог реализовать его правильно.
Я застрял здесь в течение 2 дней, если у кого-то есть идея или какая-либо ссылка, пожалуйста, помогите. Спасибо за ваше время.
Ответы
Ответ 1
В настоящее время Bootstrap 3.x не поддерживает jQuery 3.x, как сообщается здесь: https://github.com/twbs/bootstrap/issues/16834
Проблема вызвана:
jQuery 3 более строгий, чем jQuery 2. Он похож на XHTML и HTML. Обратная совместимость сохраняется, и код не похож на беспорядок. Если я не ошибаюсь, все, что вам нужно сделать, это заменить show() и hide() функции с .css('display', '') или addClass ('hidden') и исправить selector в alert.js(QUnit не работает в этой строке, потому что $('#') является недействителен в jQuery 3)
Исправлено в выпуске Bootstrap 3.3.7: https://github.com/twbs/bootstrap/issues/16834#issuecomment-225039913
Ответ 2
Последняя текущая версия Bootstrap (3.3.7) теперь поддерживает jQuery 3+ в соответствии с комментарием разработчика здесь https://github.com/twbs/bootstrap/issues/16834.
Ответ 3
Если вы используете Bower для управления вашими пакетами javascript, чтобы исключить jquery 3.0, вы должны указать версию jquery, например:
"jquery": "^2.2"
в bower.json
.
bower.json
пакета jquery-ui
имеет следующую строку:
"jquery": ">=1.6"
Из-за этого Bower устанавливает последнюю версию jQuery, которая вызывает вашу проблему.
Обратите внимание, что jQuery 3.0 выпущен по состоянию на 9 июня 2016 года.
Ответ 4
То, что решило мою проблему, - это загрузка jquery более низкой версии до загрузки bootstrap.js, а затем загрузка jquery более высокой версии после загрузки bootstrap.js для разрешения конфликтов. В моем примере
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="~/App_Theme/bootstrap/js/bootstrap.min.js"></script>
<script>
var $j = jQuery.noConflict();
</script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<script>
var $ = jQuery.noConflict();
</script>
Ответ 5
Что касается меня, все просто. Все о файлах ссылок в очереди. Мне нужно переместить такие ссылки:
<head>
<script src="js/jquery1.9.1.js"></script>
<script src="js/bootstrap.js"> </script>
</head>
В конце концов, он работает прокорно.
Ответ 6
У меня была такая же проблема, и у меня не было jquery 1.8.2 на моих веб-страницах. Я решу свою проблему, изменяя версию jquery в packages.config
изменить
<package id="AspNet.ScriptManager.jQuery" version="1.8.2" targetFramework="net45" />
<package id="jQuery" version="1.8.2" targetFramework="net45" />
к
<package id="AspNet.ScriptManager.jQuery" version="2.1.4" targetFramework="net45" />
<package id="jQuery" version="2.1.4" targetFramework="net45" />
моя версия jquery 2.1.4
Ответ 7
Итак, у меня была новая версия Bootstrap, но по какой-то причине минимальная версия по-прежнему оставалась старой версией, которая не поддерживала JQuery 3. Я удалил мини-загрузочную бутстрап JS, затем повторно запустил новый Bootstrap.js и развернул, и проблема пошла прочь.