Noob问题,我的基本设置如下:
(function($) {
$.fn.imageSlider = function(options) {
var defaults = {
columns: 3,
imgHeight: 50,
imgWidth: 75,
jsonScript: '',
jsonData: {},
onComplete: $.noop // I want a user supplied method here
};
var options = $.extend(defaults, options);
// Exec plugin here
if($.isFunction(options.onComplete)) {
// call user provided method
options.onComplete.call();
}
})(jQuery)
插件调用
$('#gallery').imageSlider({
columns: 6,
jsonScript: './scripts/galley.php?id=1'
});
插件工作正常但永远不会调用用户提供的完成功能
要使onComplete方法起作用,我需要做些什么?
答案 0 :(得分:1)
我可以立即看到的一个问题是你没有正确关闭你的功能定义。
(function($) {
$.fn.imageSlider = function(options) {
// ...setup options and code...
}; // <-- missing this
})(jQuery);
除此之外,一切看起来都很好:http://jsfiddle.net/y4rkS/