我正在编写一个jquery插件并且它运行良好,但它需要一个外部>外部包装器#id(#somediv),即:
$('#somediv').foo({
wrap : 'example',
one : 'red',
two : 'blue',
});
HTML:
<div id="somediv">
<<div id="example">
<!-- Do stuff -->
</div>
</div>
对我来说,不需要外部&gt;外部包装器(#somediv),并且希望能够删除对它的需要,并且只需要一个实际上是wrap : 'example',
选项的包装器并调用插件像这样的选项:
$.foo({
wrap : 'example',
one : 'red',
two : 'blue',
});
HTML:
<div id="example">
<!-- Do stuff -->
</div>
因为标题说明如何将更改$('#somediv').foo
更改为$.foo
?
基本插件布局:
;(function($) {
$.fn.foo = function(opts) {
var defaults = {
wrap : 'example',
one : 'red',
two : 'blue'
};
var opts = $.extend(defaults, opts);
return this.each(function() {
// Do stuff
});
};
})(jQuery);
像往常一样,所有的帮助都会受到赞赏并提前感谢。
答案 0 :(得分:0)
而不是将其分配给jQuery.fn
直接分配到jQuery
。
您也可以使用extend()
之类的...
$.extend({
foo: function() { ... }
});