![](/img/trans.png)
[英]bootstrap.js: Uncaught Error: Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3
[英]Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3
简介
我正在使用引导程序框架。我目前正在研究“引导程序选项卡”(隐藏/显示)。我正在使用引导程序版本 3 和 jquery 版本 3.0.2。
问题
我的选项卡不起作用,除非我加载版本低于 1.6 的 jquery。但是 ajax 使 jquery 低于 1.6 出现问题。 Chrome 控制台给我这个错误。
bootstrap.min.js:6 未捕获错误:Bootstrap 的 JavaScript 需要 jQuery 1.9.1 或更高版本,但低于版本 3
我尝试了不同的回退技术,但无法正确实施。
我在这里被困了 2 天,如果有人有任何想法或任何参考,请帮忙。感谢您的时间。
目前 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') 并修复 alert.js 中的选择器(QUnit在这一行失败,因为 $('#') 在 jQuery 3 中无效)
它在 Bootstrap 3.3.7 版本中得到修复: https : //github.com/twbs/bootstrap/issues/16834#issuecomment-225039913
最新版本的 Bootstrap (3.3.7) 现在支持 jQuery 3+,根据这里的开发人员评论https://github.com/twbs/bootstrap/issues/16834 。
如果您使用 Bower 管理您的 javascript 包,要排除 jquery 3.0,您应该指定 jquery 的版本,例如:
"jquery": "^2.2"
在你的bower.json
。
jquery-ui
包的bower.json
有如下一行:
"jquery": ">=1.6"
因此,Bower 安装了最新版本的 jQuery,这会导致您的问题。
请注意,jQuery 3.0 于 2016 年 6 月 9 日发布。
解决我的问题实际上是在 bootstrap.js 之前加载 jquery 较低版本,然后在 bootstrap.js 之后加载 jquery 较高版本以解决冲突。 以上是我的例子
<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>
至于我,一切都很简单。 这都是关于队列链接文件的。 我需要移动这样的链接:
<head>
<script src="js/jquery1.9.1.js"></script>
<script src="js/bootstrap.js"> </script>
</head>
毕竟 - 它工作正常。
我有同样的问题,我的网页中没有 jquery 1.8.2。我通过在packages.config 中更改 jquery 版本来解决我的问题
改变
<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
所以我有了新版本的 Bootstrap,但由于某种原因,min 版本仍然是不支持 JQuery 3 的旧版本。我删除了缩小的 bootstrap JS,然后重新缩小了新的 Bootstrap.js 并部署,问题就消失了。
将此代码放在 Functions.php 中
wp_deregister_script(‘jquery’);
wp_register_script(‘jquery’, ‘//cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js’, false, null);
wp_enqueue_script(‘jquery’);
这是参考网址: https : //wordpress.org/support/topic/error-bootstraps-javascript-requires-at-least-jquery-v1-9-1/
随着迁移到 wordpress 5.6,我遇到了同样的问题:bootstrap 和 jquery 之间的冲突。 我网站上的导航不适用于所有下拉菜单。 我已经在我的文件夹 css + js 中将 boostrap3.3.6 更改为 boostrap3.3.7 以获得使用 jquery 1.9.1 的引导程序并且它可以工作。
我也在 WordPress 5.6 中遇到了这个错误,手风琴停止工作。 将 JS 和 CSS 从 boostrap3.3.6 升级到 boostrap3.3.7 也修复了我的错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.