IF 在each() 中不起作用

发布于 2024-11-18 00:00:55 字数 423 浏览 1 评论 0原文

我在此函数中放入的任何 if 语句都无法工作。
该声明对于此类的某些元素为 true,对于某些元素为 false,但是全部忽略它
(这是非常精简的功能,只是为了定位问题......)

$(".bought").each(function(index) {
Height = $(this).css("height")
    if (Height > 19) {
        alert(Height);
    }
});

这确实有效:

$(".bought").each(function(index) {
Height = $(this).css("height")
    alert(Height);
});

any if statement I put inside this function refuses to work.
The statement is true for some elements with this class and false for some, however all ignore it
(This is very stripped functionality just to locate the problem...)

$(".bought").each(function(index) {
Height = $(this).css("height")
    if (Height > 19) {
        alert(Height);
    }
});

this does work:

$(".bought").each(function(index) {
Height = $(this).css("height")
    alert(Height);
});

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

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

发布评论

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

评论(4

孤凫 2024-11-25 00:00:55
$(".bought").each(function(index) {
    thisHeight = $(this).height()
    if (thisHeight > 19) {
        alert(thisHeight);
    }
});

那行得通!
http://jsfiddle.net/NmHb3/

$(".bought").each(function(index) {
    thisHeight = $(this).height()
    if (thisHeight > 19) {
        alert(thisHeight);
    }
});

That works!
http://jsfiddle.net/NmHb3/

老旧海报 2024-11-25 00:00:55

$(this).css("height") 返回字符串...您需要在应用比较之前将其解析为 int ..

 Height = parseInt($(this).css("height"),10)
if (Height > 19) {         alert(Height);     }

$(this).css("height") returns string...you need to parse this in int before applying comparison..

 Height = parseInt($(this).css("height"),10)
if (Height > 19) {         alert(Height);     }
丘比特射中我 2024-11-25 00:00:55

Height 以字符串形式返回。比较实际上是 "19" > 19 产生 false

尝试将其转换为整数:

if (parseInt(Height) > 19) {
// ...
}

Height is returned as a string. The comparision is actually "19" > 19 which yields false.

Try converting it to an integer:

if (parseInt(Height) > 19) {
// ...
}
欢烬 2024-11-25 00:00:55

您使用的以下代码返回附加到结果中的“px”,因此您无法将其与“19”进行比较,

Height = $(this).css("height")

像这样解析它并让我们知道您的进展情况:)

parseInt($(this).css('height'), 10);

The below code which you have used returns 'px' appended to the result so you can't compare it to '19'

Height = $(this).css("height")

Parse it like this and let us know how you get on :)

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