今天研发的同事在开发一个新jQuery插件时,遇到一个揪心的问题。平台以前使用的 jQuery版本是1.2.6,偶,天啊!这是古代的版本啊!
由于很多功能基于老版本,不能删除啊,同志们都懂的!
于是我们就在讨论如何解决两个版本之间的冲突。查找了一些前辈写的资料,得出以下的代码:
1 <!doctype html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>解决jQuery不同版同时引用的冲突</title>
6 <script src="jquery.min/jquery.1.7.1.min.js"></script>
7 <script>var jq171 = jQuery.noConflict(true);</script>
8 <script src="jquery.min/jquery.1.9.1.min.js"></script>
9 </head>
10 <body>
11 <br>
12 <button id="b17">1.7.1</button><br>
13 <button id="b19">1.9.1</button>
14 <script>
15 (function($){
16 $(function(){
17 $("#b17").click(function(){
18 alert(‘1.7.1‘)
19 })
20 })
21 })(jq171)
22
23 $(function(){
24 $("#b19").click(function(){
25 alert(‘1.9.1‘)
26 })
27 })
28 </script>
29 </body>
30 </html>
在调用第一个版本下面添加一个 noConflict() 的声明,然后在调用的时候使用闭包,将就着解决吧,虽然看起来很怪异!
时间: 2024-11-08 08:25:48