空选择器 - jQuery 插件创建
如何创建不需要选择器的插件,例如:
$.pluginName();
出于此:
(function($)
{
$.fn.pluginName = function(options)
{
// options
};
// code
})(jQuery);
而不是使用此(以防止其他库与 $
发生冲突):
jQuery.pluginName = function(name, value, options)
{
// code
};
因为如果我这样做: $.pluginName()
,Firebug 告诉我 $.pluginName()
不是一个函数,除非我添加以下内容: $.('a 选择器位于此处').pluginName ();
。
How do you create a plugin that does not require a selector, e.g:
$.pluginName();
Out of this:
(function($)
{
$.fn.pluginName = function(options)
{
// options
};
// code
})(jQuery);
Instead of using this (to prevent other libraries clashing with the $
):
jQuery.pluginName = function(name, value, options)
{
// code
};
Since if I do this: $.pluginName()
, Firebug tells me that $.pluginName()
is not a function unless I add this: $.('a selector goes here').pluginName();
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
将其放在全局 jQuery 上而不是原型上。
请记住,函数内的
this
不会是 jQuery 对象。它将引用全局jQuery
函数。Place it on the global jQuery instead of the prototype.
Keep in mind that
this
inside your function will not be a jQuery object. It will refer to the globaljQuery
function.您使用
这是一个立即执行的匿名函数,它接受一个参数并绑定到参数 $,向该参数提供值 jQuery。
You use
This is an immediately executed anonymous function that takes one argument and is bound to parameter, $, to which a value, jQuery, is supplied.
如果您想同时添加 1 个以上的插件,也可以使用 $.extend({f1: function(){},f2: function(){}}) 。这也会让你的代码看起来更干净。
you can also use $.extend({f1: function(){},f2: function(){}}) if you wish to add more than 1 plugins together. this will make ur code look cleaner too.