我经常看到以下两种模式.两者有什么区别?什么时候适合?
$.pluginName = function(){}
Run Code Online (Sandbox Code Playgroud)
和
$.fn.pluginName = function(){}
Run Code Online (Sandbox Code Playgroud)
非常简单:
$.fn.pluginName是一个可在所有jQuery.init*对象上调用的函数.这对于使链式功能与对象一起使用非常有用:
例:
$.fn.foo = function(){...};
$('#bar').foo();
Run Code Online (Sandbox Code Playgroud)
要继续链接对象,您需要返回另一个jQuery.init对象(可以是原始对象,也可以是已过滤的对象):
$.fn.foo = function(){ return this; };
Run Code Online (Sandbox Code Playgroud)
$.pluginName是一个可以调用的函数$.pluginName().这对于创建实用程序函数或存储特定插件的默认状态很有用.
例:
$.foo = function(){...};
bar = $.foo();
Run Code Online (Sandbox Code Playgroud)
*jQuery工厂函数(jQuery()或$())实际返回一个new jQuery.init对象
| 归档时间: |
|
| 查看次数: |
1723 次 |
| 最近记录: |