我正在创建自己的jQuery插件。这是我到目前为止编写的代码:
(function ($) {
$.fn.customPlugin.defaults = {
x: 'test',
y: 'foo'
};
$.fn.customPlugin = function (options) {
var opt = $.extend({}, $.fn.customPlugin.defaults, options);
return this.each(function () {
var current = $(this);
//I want to add instance methods
});
};
})(jQuery);
接下来我想在这个插件中添加实例方法。现在我有两种方法可以做到这一点
1
(function ($) {
$.fn.customPlugin.defaults = {
x: 'test',
y: 'foo'
};
$.fn.customPlugin = function (options) {
var opt = $.extend({}, $.fn.customPlugin.defaults, options);
this.each(function () {
var current = $(this);
function method1() {
//opt will be used here
}
function method2() {
//opt will be used here
}
});
};
})(jQuery);
2
(function ($) {
$.fn.customPlugin.defaults = {
x: 'test',
y: 'foo'
};
$.fn.customPlugin = function (options) {
var opt = $.extend({}, $.fn.customPlugin.defaults, options);
this.each(function () {
var current = $(this);
$.fn.customPlugin.method1(opt);
$.fn.customPlugin.method2(opt);
});
};
$.fn.customPlugin.method1(opt)
{
//opt will be used here
};
$.fn.customPlugin.method2(opt)
{
//opt will be used here
};
})(jQuery);
您能指导我应该使用哪种方法,或者您是否可以建议我采用比这更好的方法?