对jQuery命名空间,原理解释
程序员文章站
2022-07-13 09:09:13
...
Prototype:将某一系列的功能封装到一个类之中,eg:Math类。
jQuery:将HTML节点视为一个Object,通过调用这个Object的不同方法。
[b]1.理解jQuery的两对小括号()()[/b]
运算符表达式,
函数本身自带,
调用函数() //注意引用函数
eg:
(function(){
alert("aa");
})();
function myfun(){
//
}
myfun();
强制运算(优先级)void , +
[b]2.jQuery和prototype共存[/b]
脚本开始处调用方法:
方法一:jQuery.noConflict()方法
a.jQuery(document).ready(function(){});
b.$(function(){});
方法二:$j=jQuery.noConflict()
a.$j(document).ready(function(){});
b.$j(function(){});
方法三:
jQuery 代码依然使用 $ 作为别名,而不管全局的 $ 为何
a.jQuery(function(){ //外部jQuery定义
//继续可以使用$作为别名
})
b.jQuery(document).ready(function(){
//
})
eg:
[b]3.query自定义插件命名空间[/b]
(function($){
//代码
})(jQuery);
或
jQuery(function($){
//
});
function中的方法会在加载js文件时候就会
调用function($)中的$是形参
而(jQuery)是实参,jQuery是jquery.js中的全局变量,实际上就代表$.
所以说即使在外面声明了var $j = jQuery.noConflict();组件js里面的$也不会受到影响
jQuery:将HTML节点视为一个Object,通过调用这个Object的不同方法。
[b]1.理解jQuery的两对小括号()()[/b]
运算符表达式,
函数本身自带,
调用函数() //注意引用函数
eg:
(function(){
alert("aa");
})();
function myfun(){
//
}
myfun();
强制运算(优先级)void , +
[b]2.jQuery和prototype共存[/b]
脚本开始处调用方法:
方法一:jQuery.noConflict()方法
a.jQuery(document).ready(function(){});
b.$(function(){});
方法二:$j=jQuery.noConflict()
a.$j(document).ready(function(){});
b.$j(function(){});
方法三:
jQuery 代码依然使用 $ 作为别名,而不管全局的 $ 为何
a.jQuery(function(){ //外部jQuery定义
//继续可以使用$作为别名
})
b.jQuery(document).ready(function(){
//
})
eg:
jQuery.noConflict();
//jq
jQuery(function($){
//$("div").hide();
});
//pro
$('oDiv').style.display="none"
[b]3.query自定义插件命名空间[/b]
(function($){
//代码
})(jQuery);
或
jQuery(function($){
//
});
function中的方法会在加载js文件时候就会
调用function($)中的$是形参
而(jQuery)是实参,jQuery是jquery.js中的全局变量,实际上就代表$.
所以说即使在外面声明了var $j = jQuery.noConflict();组件js里面的$也不会受到影响