Jquery var createControl=function(attribute){…}$.fn.createControl=function(attribute){..}之间的区别是什么
两者的区别是什么Jquery var createControl=function(attribute){…}$.fn.createControl=function(attribute){..}之间的区别是什么,jquery,jquery-plugins,Jquery,Jquery Plugins,两者的区别是什么 var createControl = function (attribute){ ...} 和 $.fn.createControl = function (attribute) { .. } 在jQuery中。将函数从$.fn.createControl更改为var createControl有什么好处。这是编写jQuery插件语法的一部分,因此您可以像这样调用自定义插件: $(selector).createControl(); 这样,您的createContr
var createControl = function (attribute){ ...}
和
$.fn.createControl = function (attribute) { .. }
在jQuery中。将函数从$.fn.createControl更改为var createControl有什么好处。这是编写jQuery插件语法的一部分,因此您可以像这样调用自定义插件:
$(selector).createControl();
这样,您的
createControl()
就可以知道调用了哪些元素。如果您正在执行var createControl
,则需要将选择器传递给函数,或者在函数中对其进行硬编码。使用$.fn.createControl=function(){}
允许使用插件。例如,如果有人想为某个东西制作一个插件,并想让用户决定他想为该人使用插件的元素,那么只需执行$(“#element”).createControl()代码>
只需执行var createControl=function(){}
即可创建一个函数,其唯一用途是单独调用,例如createControl()代码>前面没有任何选择器元素
var foo = function (param) { ... }
将函数分配给foo
$.fn.foo = function (param) { ... }
使用foo
扩展jQuery原型fn
只是prototype
的快捷方式,$
是jQuery
的快捷方式。你可以写同样的东西:
jQuery.prototype.foo = function (param) { ... }
区别在于前者只是某个范围内的一个变量,在它之外是看不见的。后者是一种扩展jQuery全局对象的方法,因此可以从任何地方访问变量,因为jQuery对象附加到窗口
,是全局的