我在网上看到有这种写法:
(function($){
$.fn.任意名称=function(options){
//写方法的具体实现 可以定义一些变量
}
})(jQuery);调用的时候就是 $("可以是Id或元素或类名").任意名称();
完整例子如下:
(function($){
$.fn.tableUI = function(options){
var defaults = {
evenRowClass:"evenRow",
oddRowClass:"oddRow",
activeRowClass:"activeRow"
}
var options = $.extend(defaults, options);
this.each(function(){
var thisTable=$(this); 
//添加活动行颜色
$(thisTable).find("tr").bind("mouseover",function(){
$(this).addClass(options.activeRowClass);
});
$(thisTable).find("tr").bind("mouseout",function(){
$(this).removeClass(options.activeRowClass);
});
});
};
})(jQuery);
上面的这个我还可以看懂  可是下面的这种写法是什么意思 ? 
(function(cloudStack, $) {
//里面会定义一些方法  
})(cloudStack, jQuery);看不懂这个知道的麻烦给我说一些 谢谢了。。
jqueryfunction

解决方案 »

  1.   

    $ 是jQuery的别名,我们用$代替会使代码简便。
    但项目中不知道有些什么库,在其它非jQuery库中$可能有其它意义,所以就不能用$了。但我们还是想在所有库中都用使用$。这时就要显示的在定义中指定$就是jQuery。
    所以楼主的代码,
    (function(cloudStack, $) { 
    })(cloudStack, jQuery);jQuery就是给$传值
      

  2.   

    (function(cloudStack, $) { 
    })(cloudStack, jQuery);
    是一种直接执行JAVASCRIPT代码。相当于,先定义了一个函数,然后用后面的两个参数调用。转化成常见的代码形式相当于:
    var temp=function(cloudStack, $) { 
      //...
    };
    temp(cloudStack, jQuery);