jquery库避免冲突

2015-10-11  本文已影响48人  oliverhuang

query特有的符号是$,但是也会出现和多个库并用的时候会出现冲突的情况,这里做个笔记,总结一下。

jquery在其他库之前导入

可以直接使用jQuery来代替$来使用

<script type="text/javascript" src="./jquery.js"></script>
<script type="text/javascript" src="./prototype.js"></script>

<script type="text/javascript">
    jQuery(function(){
        jQuery("selector").some_method();
    });
    $("selector").some_method();
</script>

jquery在其他库之后导入

这个时候就需要添加noConflict函数

<script type="text/javascript" src="./prototype.js"></script>
<script type="text/javascript" src="./jquery.js"></script>

<script type="text/javascript">
    jQuery.noConflict();// need use noConfict()
    jQuery(function(){
        jQuery("selector").some_method();
    });
    $("selector").some_method();
</script>

或者将jQuery.noConflict()修改为自定义的标志如var $j = jQuery.noConflict();

如果还是想用$的话,可以采用闭包的方式。

<script type="text/javascript" src="./prototype.js"></script>
<script type="text/javascript" src="./jquery.js"></script>

<script type="text/javascript">
    jQuery.noConflict();// need use noConfict()
    jQuery(function($){
        $("selector").some_method();
    });
    $("selector").some_method();
</script>

或者

<script type="text/javascript" src="./prototype.js"></script>
<script type="text/javascript" src="./jquery.js"></script>

<script type="text/javascript">
    jQuery.noConflict();// need use noConfict()
    (function($){
        $(function(){
            $("selector").some_method();
        });
        
    });
    $("selector").some_method();
</script>
上一篇 下一篇

猜你喜欢

热点阅读