0
我有功能的JQuery的擴展,我不知道如何訪問實例的選項:在JQuery擴展函數中,如何訪問實例選項?
(function ($) {
$.fn.MyExtension= function (methodOrOptions) {
if (methods[methodOrOptions]) {
return methods[methodOrOptions].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof methodOrOptions === 'object' || !methodOrOptions) {
// Default to "init"
return methods.init.apply(this, arguments);
} else {
$.error('Method ' + methodOrOptions + ' does not exist on jQuery.MyExtension');
}
};
var methods = {
init: function (options) {
var defaults = {
testOption: "test"
};
options = $.extend(defaults, options);
return this.each(function() {
// Code logic goes here
}
MyFunction: function() {
var optionVal = options.testOption;
}
};
})(jQuery);
所以這個代碼拋出一個錯誤,當我打電話MyFunction的,因爲它不知道什麼是「選擇」是。