Я создаю свой первый плагин и имею некоторые проблемы. Я определяю пару глобальных переменных: значения по умолчанию и параметры. Я следую шаблону для такого плагина:опции variable undefined
(function ($) {
var defaults;
var options;
$.fn.button_carousel = function(options){
console.debug("initializing button carousel");
defaults = {
days_in_month: 0,
starting_day: 0,
days_with_appointments: null,
btnAppointmentFontColor: "#556b2f"
};
options = $.extend({}, defaults, options);
console.debug("options: days_in_month: " + options.days_in_month +
"options: staring_day: " + options.starting_day +
"options: days_with_appointments: " + options.days_with_appointments);
...
HighlightDays();
return this.each(function(){
console.log(options);
});
};
function HighlightDays()
{
if(options.days_with_appointments != undefined && options.days_with_appointments != null)
{
...
}
}
}(jQuery));
Ознакомьтесь с отладчиком. Он печатает значения каждого свойства, как ожидалось. Тем не менее, когда я вызываю функцию HightlightDays(), условие оператора if вызывает ошибку, указывающую опцию переменной undefined. Как это может быть? Я объявляю ее глобальной переменной, поэтому ее можно получить везде. Пожалуйста, объясни.
@Alan См. Обновленное сообщение. – guest271314