zoukankan      html  css  js  c++  java
  • 如何解决jquery库的冲突问题

    多个库之间的冲突

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

    那么,既然有冲突的问题,为什么要使用多个库呢?原因是jQuery 只不过是DOM 操作为主的库,方便我们日常Web 开发。但有时,我们的项目有更多特殊的功能需要引入其他的库,比如用户界面UI 方面的库,游戏引擎方面的库等等一系列。

    而很多库,比如prototype、还有我们JavaScript 课程开发的Base 库,都使用“$”作为基准起始符,如果想和jQuery 共容有两种方法:

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

    var $$ = jQuery; //创建一个$$的jQuery 对象
    $(function () { //这是Base 的$
    alert($('#box').ge(0)); //这是Base 的$
    alert($$('#box').width()); //这是jQuery 的$$
    });

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

    jQuery.noConflict(); //将$符所有权剔除
    var $$ = jQuery;
    $(function () {
    alert($('#box').ge(0));
    alert($$('#box').width());
    });
  • 相关阅读:
    combotree的总结(这个好)
    Extjs下拉树代码测试总结
    ExtJs 3 自定义combotree
    项目中EXTjs中运用到的下拉树
    EXTJS下拉树ComboBoxTree参数提交及回显方法
    Extjs window组件 拖动统制
    extjs grid数据改变后刷新的实现
    获取 ext grid 选中行 对象
    ext:grid分页,列宽度自动填满grid宽度
    pringBoot2.0启用https协议
  • 原文地址:https://www.cnblogs.com/xs-yqz/p/5108801.html
Copyright © 2011-2022 走看看