javascript - 另一个冲突的 jquery 问题

标签 javascript jquery html css slicknav

我找到了很多答案(大部分是关于 wordpress 的),但没有什么帮助。我是 css/jquery 的新手,所以需要一点帮助。我试过这个但无法让它工作 Can I use multiple versions of jQuery on the same page?

我的代码在这里:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="js/jquery.slicknav.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $('#menu').slicknav();
});
</script>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
    var jQuery_1_7_2 = $.noConflict(true);
</script>
<script>window.jQuery || document.write('<script src="js/jquery-1.7.2.min.js"><\/script>')     
</script>

<script src="js/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
  var jQuery_1_9_1 = $.noConflict(true);
</script> 
<script src="js/owl.carousel.js"></script>

我在我的页面上使用了两个元素的源代码,一个调用 jquery-1.7.2.min.js,另一个调用 jquery-1.9.1.min.js。

1.7.2 控制我的响应式导航栏,而 1.9.1 由图像轮播使用。目前轮播版本否决了导航栏(消失)。

有什么办法可以解决这个冲突吗?

最佳答案

假设需要不同的版本,并且插件是按照the correct pattern 编写的,不要使用 noConflict,而只是定位脚本,以便插件在执行时可以访问正确的 window.jQuery

<script src="js/jquery-1.7.2.min.js"></script>
<!-- plugins that "only work with" 1.7.2: $/jQuery refer to 1.7.2 -->
<script src="js/jquery.slicknav.js"></script>

<script src="js/jquery-1.9.1.min.js"></script>
<!-- everything else: $/jQuery refer to 1.9.1 (but consider 1.11+) -->
<script src="js/owl.carousel.js"></script>

使用 noConflict 指定不同的名称是为了让知道不同名称的代码可以使用它——标准插件不是这种情况。

但是,考虑简单地为所有插件使用最新的 1.x(当前为 1.11.1),因为 jQuery 非常向后兼容,几乎没有令人惊讶的变化(弃用路线图很长)。在使用遗留功能的情况下,there is jquery-migrate.js to shim changes for older code这可以消除许多此类迁移问题。

[jQuery-migrate] can be used to detect and restore APIs or features that have been deprecated in jQuery and removed as of version 1.9.

关于javascript - 另一个冲突的 jquery 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25269670/

相关文章:

javascript - 我该如何修复这个 javascript 函数?

javascript - 有没有办法用 ElectronJS 改变桌面屏幕颜色

javascript - 在 JavaScript 中创建一个可点击的数组

javascript - 单个<select>有多个选中选项

javascript - 在创建新实例的构造函数闭包内更改 "var"

javascript - jQuery if 单选按钮名称和值的条件

c# - jsonresult 不回来?

php - 如何让嵌入式 PHP 在 HTML 中工作?

html - 如何隐藏:before content in parent by hover on child?

javascript - 语义 UI - `gulp build` 返回 JS 错误