2009-12-11 66 views
0

在我的jQuery代碼中(我知道if語句不是jQuery),類「滑塊」的CSS屬性「right」不等於30,但「容器」仍然在mousedown上淡出......我是什麼做錯了?如何獲得此if語句與jQuery .css工作?

我希望它是:如果滑塊類有一個「右」CSS屬性等於30像素,然後淡出容器。

$(document).ready(function() { 
    $(".slider").mousedown(function() { 
     if ($('.slider') 
      .css({'right':30}) 
     ) { 
     $('.container') 
      .fadeOut('slow'); 
     } 
    }); 
}); 

回答

3
$(document).ready(function() { 
    $(".slider").mousedown(function() { 
     if ($('.slider').css('right') == 30) { 
      $('.container').fadeOut('slow'); 
     }  
    }); 
}); 
5

可能:

if($('.slider').css('right') == '30'){ ... } 

有可能在那裏的值的末尾是一個單元,像px。不確定。

9

$('.slider').css({'right':30})返回總是計算爲真的數組對象。

你想if ($('.slider').css('right') == "30px") ...

+2

額外的(因爲它可能不是很明顯的OP):代碼'$( '滑 ')的CSS({' 右':30})。 '正在應用正確的css屬性值爲30,這就是爲什麼它返回一個數組並且計算結果爲true。 – 2009-12-11 22:01:09

+0

是啊,沒有考慮到更進一步的=效果..好趕上 – 2009-12-11 22:39:40