jQuery技术

关于jQuery中$.noConflict() 实现的疑问

字号+ 作者:H5之家 来源:H5之家 2015-11-14 18:41 我要评论( )

问题描述 jQuery中为了防止冲突(比如多个库都使用$符号作为函数或者变量名),我们可以使用 jQuery.noConflict 方法来实现$和jQuery控制权的移交。 内部实现如下

问题描述

jQuery中为了防止冲突(比如多个库都使用$符号作为函数或者变量名),我们可以使用 jQuery.noConflict 方法来实现$和jQuery控制权的移交。

内部实现如下
开头首先做的一件事是缓存window下的$和jQuery变量

// Map over jQuery in case of overwrite _jQuery = window.jQuery, // Map over the $ in case of overwrite _$ = window.$,

然后在noConflict中

noConflict: function( deep ) { if ( window.$ === jQuery ) {//为什么要经过这次判断,window.$===jQuery不是恒为真么 window.$ = _$; } if ( deep && window.jQuery === jQuery ) { window.jQuery = _jQuery; } return jQuery; }

疑问:

  • if ( window.$ === jQuery ) 为什么要经过这次判断,window.$===jQuery不是恒为真么?

  • 亦或在什么情况下以上判断不为真?

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 7个有用的jQuery小技巧

      7个有用的jQuery小技巧

      2016-02-26 13:02

    • jQuery制作select双向选择列表

      jQuery制作select双向选择列表

      2016-02-26 11:00

    • 全面详细的jQuery常见开发技巧手册

      全面详细的jQuery常见开发技巧手册

      2016-02-26 10:02

    • 强大的jQuery移动插件Top 10

      强大的jQuery移动插件Top 10

      2016-02-25 09:05

    网友点评
    v