Я изучаю jQuery, и я просто проверяю, как работают события и условия. Я также использую Velocity.js для анимации. Вот код:Переменная всегда принимает значение false
$(function() {
$("#navBar").click(function() {
var isOpen = false;
if (isOpen == false){
$(this).velocity({ height: 300});
isOpen = true;
console.log(isOpen);
return false;
}
else{
$(this).velocity({ height: 50});
isOpen = false;
console.log(isOpen);
}
});
});
Я не знаю, почему это не работает. если условие выполняется и записывается в консоль, переменная имеет значение true. Но после второго щелчка продолжает работать условие if и возвращает isOpen true. Я не могу выполнить оператор else.
'isOpen' будет * всегда * быть ложным. Вы должны объявить его вне функции щелчка. – Andy
Kepp isOpn вне кнопки нажмите и добавьте isOpen = true внутри if block. – Vamsi