【问题标题】:my multiple versions of jQuery doesn't work我的多个版本的 jQuery 不起作用
【发布时间】:2019-04-04 00:06:16
【问题描述】:

我想在同一页面上使用多个版本的 jQuery。 我在下面写了但是两个脚本不起作用。 你能教我我的代码有什么问题吗?

<script type="text/javascript" src="//jpostal-1006.appspot.com/jquery.jpostal.js"></script>
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.0.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<script type="text/javascript">    
var $330 = $.noConflict(true);
</script>

这是我的整个 JS 部分

https://jsfiddle.net/blueink/8m7oLzsf/1/

一个是使用 jquery-2.1.0.min.js 和 jpostal.js 的邮政编码脚本 第二个脚本是使用 3.3.0 的 livesearch。

【问题讨论】:

标签: jquery


【解决方案1】:

问题是因为您需要在添加第二个 jQuery 实例之前对第一个 jQuery 实例调用 $.noConflict()。因此,如果您想保留 $ 作为对 2.1.0 的引用,请添加第二个。

另请注意,您对依赖 jQuery 的 jquery.jpostal.js 的引用需要放在这两个引用之后。

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<script type="text/javascript">
  var $330 = $.noConflict(true);
</script>
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="//jpostal-1006.appspot.com/jquery.jpostal.js"></script>

<!-- Just for demonstration purposes -->
<script>
  console.log($.fn.jquery)
  console.log($330.fn.jquery);
</script>

综上所述,在一个站点中需要多个版本的 jQuery 远非理想,在未来成为维护问题。您将花时间解决升级到最新版本时遇到的问题。

【讨论】:

  • 亲爱的@Rory McCrossan 非常感谢!我很感激!这是完美的答案和解释。谢谢!
  • 没问题,很高兴为您提供帮助
猜你喜欢
  • 2021-05-29
  • 2013-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-03
  • 1970-01-01
  • 1970-01-01
  • 2013-07-10
相关资源
最近更新 更多