使用jquery时$符号冲突问题解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用jquery时$符号冲突问题解决方案相关的知识,希望对你有一定的参考价值。

    当一个项目引入多个第三方库的时候,由于没有命名空间的约束(命名空间就好比同一个目录下的文件夹一样,名字相同就会引发冲突),库与库之间的冲突在所难免。

    既然有冲突问题存在,为什么还要应用多个库呢?是因为jQuery不过是一个DOM操作为主的库,方便我们日常WEB的开发,但有时候我们的项目可能需要应用其他的库来解决一些特殊的问题。例如UI库,游戏库等等。

    例如prototype库等等,或者自己定义的使用到了$符号的库,该如何解决呢?例如我们有一个自己开发的Base库,也是用到了$符号,一般情况下有两种解决方法

    1、将jQuery库在Base库之前引用,那么“$”的所有权就交给了Base库,而jQuery可以直接使用jQuery对象调用,或者创建一个"$$"给jQuery使用。

    

//假设我们的Base库中有一个ge()方法
var $$ = jQuery;
$(function(){
    alert($("#box").ge(0));
    alert($$("#box").width());
})

    2、如果jQuery库在Base库之后引用,那么“$”所有权归jQuery所有,而Base库将会因为冲突而失去作用,在这里jQuery提供了一个方法

jQuery.noConflict();  //自我摧毁,将$所有权剔除
var $$ = jQuery;
$(function(){
    alert($("#box").ge(0));
    alert($$("#box").width());
})


本文出自 “不羁的风” 博客,请务必保留此出处http://fengcl.blog.51cto.com/9961331/1875984

以上是关于使用jquery时$符号冲突问题解决方案的主要内容,如果未能解决你的问题,请参考以下文章

jQuery中 $ 符号的冲突问题

Electron与jQuery中$符号冲突的三种解决方法

jQuery-名称符号$与其他库函数冲突

jQuery基础—— 解决jQuery冲突

jQuery 名称冲突

jQuery名称冲突