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>