любой , если оператор, который я поместил внутри этой функции, отказывается работать. Оператор верен для некоторых элементов этого класса и ложен для некоторых, однако все игнорируют его (Это очень ограниченная функциональность только для определения проблемы ...)
$(".bought").each(function(index) { Height = $(this).css("height") if (Height > 19) { alert(Height); } });
это работает:
$(".bought").each(function(index) { Height = $(this).css("height") alert(Height); });
$(".bought").each(function(index) { thisHeight = $(this).height() if (thisHeight > 19) { alert(thisHeight); } });
Это работает! http://jsfiddle.net/NmHb3/
$(this).css("height") возвращает строку ... вам нужно проанализировать это в int перед применением сравнения ..
$(this).css("height")
Height = parseInt($(this).css("height"),10) if (Height > 19) { alert(Height); }
Height возвращается в виде строки. Сравнение на самом деле "19" > 19, что дает false.
Height
"19" > 19
false
Попробуйте преобразовать его в целое число:
if (parseInt(Height) > 19) { // ... }
Код, который вы использовали ниже, возвращает 'px', добавленный к результату, поэтому вы не можете сравнить его с '19'
Height = $(this).css("height")
Разбери это так и дай нам знать, как ты поживаешь :)
parseInt($(this).css('height'), 10);