JavaScript onConflict 处理

本文详细介绍了jQuery.noConflict()函数的作用,如何在不同版本的jQuery之间进行切换,以及如何确保代码的兼容性和可维护性。通过示例代码演示了如何在同一个页面中加载多个jQuery版本,并使用noConflict()函数进行变量释放。

jQuery.noConflict用于释放jQuery和$两个全局变量。

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <style rel="stylesheet" type="text/css">
 6 </style>
 7 <script type="text/javascript">
 8 (function(){
 9     var _myjs=window.myjs;
10     var _$=window.$;
11     var myjs={
12         version:1,
13         noConflict:function(deep){
14             if(window.$ === myjs){
15                 window.$ = _$;
16             }
17             if(deep && window.myjs === myjs){
18                 window.myjs = _myjs;
19             }
20             return myjs;
21         }
22     };
23     window.myjs = window.$ = myjs;
24 })();
25 var myjs1=$.noConflict();
26 
27 (function(){
28     var _myjs=window.myjs;
29     var _$=window.$;
30     var myjs={
31         version:2,
32         noConflict:function(deep){
33             if(window.$ === myjs){
34                 window.$ = _$;
35             }
36             // 如果已经不是当前版本则不进行深度释放.
37             if(deep && window.myjs === myjs){
38                 window.myjs = _myjs;
39             }
40             return myjs;
41         }
42     };
43     window.myjs = window.$ = myjs;
44 })();
45 var myjs2=$.noConflict();
46 
47 // 如上把$都释放了
48 
49 window.onload=function(){
50     document.body.innerHTML+=""+myjs.version+myjs1.version+myjs2.version;
51 };
52 </script>
53 </head>
54 <body></body>
55 </html>

 

转载于:https://www.cnblogs.com/xf_z1988/p/javascript_noconflict.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值