Почему в коде ниже являются:Почему эти «эти» и «эти» переменные не определены?
this.fadeTime
that.fadeTime
неопределенными, и что это лучший способ, чтобы сохранить внутренние переменные, как это в классе JavaScript?
var SITE = SITE || {};
SITE.initialize = function() {
var fadeTime = 100;
that = this;
$('li#linkHome').click(function() {
resetPageLinks();
$('li#linkHome').addClass('active');
resetPages();
console.log(this.fadeTime); //undefined
console.log(that.fadeTime); //undefined
$('div#pageHome').fadeIn(that.fadeTime);
});
$('li#linkInfo').click(function() {
resetPageLinks();
$('li#linkInfo').addClass('active');
resetPages();
$('div#pageInfo').fadeIn(that.fadeTime);
});
$('li#linkAbout').click(function() {
resetPageLinks();
$('li#linkAbout').addClass('active');
resetPages();
$('div#pageAbout').fadeIn(that.fadeTime);
});
function resetPageLinks() {
$('ul.nav li').removeClass('active');
}
function resetPages() {
$('div.sitePage').hide();
}
}
Определяется 'SITE.fadeTime'? Это не в коде, который вы разместили здесь. – apsillers
Я просто называю САЙТ.initialize(), чтобы запустить его, у меня есть эта настройка, так что все мои переменные и методы внутри класса не конфликтуют с другими. –