【发布时间】:2015-12-15 12:47:26
【问题描述】:
我正在学习 jQuery,我只是在测试事件和条件是如何工作的。我还使用 Velocity.js 来制作动画。这是代码:
$(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);
}
});
});
我不知道为什么这不起作用。 if 条件 被执行并记录到控制台变量为真。但第二次点击后继续运行 if 条件并返回 isOpen true。我无法执行 else 语句。
【问题讨论】:
-
isOpen将总是为假。您需要在 click 函数之外声明它。 -
在按钮点击外保留isOpn并在if块内添加isOpen = true。
标签: javascript jquery if-statement conditional-statements velocity.js