我一直在打破这个'简单'的javascript片段:
$("#hitbox").mouseleave(function() {
if($("#sub-wrapper-1").height() < 179 || $("#sub-wrapper-2").height() < 179 ) {
$("#hitbox").animate({ "height" : '0px' }, 800),
} else {
$("#hitbox").stop();
}
});
你们能否在正确的方向上推动我如何在javascript中使用OR
运算符?上面的代码不会抛出任何错误,但似乎它将函数作为AND
运算符运行。
答案 0 :(得分:5)
您的OR运算符是正确的(实际上在您的情况下是简单的javascript!)
这里似乎有错误
$("#hitbox").animate({ "height" : '0px' },800),
将其修复为
$("#hitbox").animate({ height : '0px' },800);
答案 1 :(得分:2)
我发现有时候JS运算符(在这种情况下你的||或者)不会比较整个子句,只会比较启动子句的下一个项目。你可能想尝试包装你的条款w / parens如下:
if(($(“#sub-wrapper-1”)。height()&lt; 179)||($(“#sub-wrapper-2”)。height()&lt; 179))