如何使用javascript OR运算符?

发布于 2024-10-06 15:55:46 字数 403 浏览 3 评论 0原文

我一直在为这个“简单”的 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 运算符运行。

I've been breaking my head over this 'simple' javascript snippet:

$("#hitbox").mouseleave(function() {
  if($("#sub-wrapper-1").height() < 179 || $("#sub-wrapper-2").height() < 179 ) {     
    $("#hitbox").animate({ "height" : '0px' }, 800), 
  } else {
    $("#hitbox").stop();
  }
});

Could you guys nudge me in the right direction on how to use the OR operator in javascript? The above code doesn't throw any errors, but it seems as it runs the function as an AND operator.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你的他你的她 2024-10-13 15:55:46

你的 OR 运算符是正确的(事实上,在你的情况下是简单的 javascript!)

看来你在这里有一个错误,

$("#hitbox").animate({ "height" : '0px' },800),

将其修复为

$("#hitbox").animate({ height : '0px' },800);

Your OR operator is right (in fact in your case is simple javascript!)

It seems you have an error here

$("#hitbox").animate({ "height" : '0px' },800),

fix it as

$("#hitbox").animate({ height : '0px' },800);
酒中人 2024-10-13 15:55:46

我发现有时 JS 运算符(在这种情况下是 || 或)不比较整个子句,只比较子句开始的下一项。你可能想尝试用括号包裹你的子句,如下所示:

if(($("#sub-wrapper-1").height() < 179) || ($("#sub-wrapper-2") .height() < 179 ))

I find sometimes JS operators (in this case your || or) don't compare whole clauses, only the next item starting the clause. you may want to try wrapping your clauses w/ parens like so:

if(($("#sub-wrapper-1").height() < 179) || ($("#sub-wrapper-2").height() < 179 ))

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文