jQuery源码分析之noConflict方法
来源:互联网 发布:淘宝商家等级划分 编辑:程序博客网 时间:2024/05/16 11:02
代码1:
//因为下面函数的返回值是jQuery对象,以后用x代替$了!只是名字不同而已!var x=$.noConflict();var $=123;//到这里$被修改为123,$被写到这里noConflict里面的代码是没有意义的!x(function() {alert($);//打印123})//上面把var $=123写在那个位置下面两行代码没有意义的!那么什么时候有意义呢?看下面代码2: if ( window.$ === jQuery ) {window.$ = _$;}if ( deep && window.jQuery === jQuery ) {window.jQuery = _jQuery;}代码2:
<script>var $=123</script> <script src="jQuery.1.11.1"></script> //有代码:_jQuery=window.jQuery,_$=window.$;这时候_jQuery=123; <script>var x=$.noConflict();x(function() {alert($);//仍然打印123}) </script> //上面用_jQuery保存了123以后走了这里的代码,调用库以后window.$肯定等于jQuery if ( window.$ === jQuery ) { //调用了noConflict以后,这一句代码就是window.$=123也就是$还是123,jQuery库已经放弃$了!window.$ = _$;}if ( deep && window.jQuery === jQuery ) {window.jQuery = _jQuery;}
源码如下:
var// Map over jQuery in case of overwrite_jQuery = window.jQuery,// Map over the $ in case of overwrite_$ = window.$;jQuery.noConflict = ( deep ) {if ( window.$ === jQuery ) {window.$ = _$;}if ( deep && window.jQuery === jQuery ) {window.jQuery = _jQuery;}return jQuery;};总结:
(1) 如果没有参数true那么就是放弃$,如果参数是true那么连jQuery变量也被放弃了!
0 0
- jQuery源码分析之noConflict方法
- jQuery的noConflict方法源码分析
- jquery noConflict()方法分析
- jQuery源码学习之 noConflict
- jQuery 核心 - noConflict() 方法
- jQuery - noConflict() 方法
- jQuery noConflict() 方法
- jQuery 核心 - noConflict() 方法
- jQuery 核心 - noConflict() 方法
- jQuery 核心 - noConflict() 方法
- jQuery - noConflict() 方法
- jquery 源码分析-核心(3)noConflict和each
- jQuery源码阅读[1]noConflict
- jquery中的noConflict方法详解
- jQuery教程 9 noConflict() 方法
- jQuery源码解析--jQuery.noConflict() 函数详解
- jQuery源码分析之on方法
- jQuery源码分析之css方法
- lua--quick之环境搭建
- python中取得矩阵中最大元素的位置
- UICollectionReusableView的用法,类似UITableView的分组
- linux驱动按键控制led灯
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 背包
- jQuery源码分析之noConflict方法
- 编程之法2----字符串的包含
- android handler 和Looper 的理解
- 求整数数组中的最长递增子序列长度
- 软考路之算法汇总
- Android 手机红外遥控器实现
- 二分查找
- 经典的30道JAVA面试题
- 异步过程调用APC