http://docs.jquery.com/Plugins/Authoring#Defaults_and_Options描述插件如何拥有默认选项。
var settings = $.extend( {
'location' : 'top',
'background-color' : 'blue'
}, options);
所选答案第二部分jQuery Plugin: Adding Callback functionality描述如何在选项对象中添加回调。
// extend the options from pre-defined values:
var options = $.extend({
callback: function() {}
}, arguments[0] || {});
// call the callback and apply the scope:
options.callback.call(this);
如何同时添加默认设置和回调函数?另外,我有点困惑为什么我要针对参数 [0] 或空对象扩展默认回调函数。谢谢
最佳答案
只需合并两者,您就可以在一个对象中拥有任意数量的项目
$.fn.myPlugib = function( user_options ) {
var options = $.extend({
'location' : 'top',
'background-color' : 'blue'
'callback': function() {}
}, user_options || {});
//now options object can be used to get callback or any other options when needed
options.callback.call(this, options.location)
}
用户选项 || {}
确保如果用户未提供任何选项,我们将使用空选项对象
关于javascript - jQuery 插件。添加选项和回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13110803/