如果条件不起作用?

时间:2013-08-04 12:26:31

标签: jquery if-statement

我的代码: http://codepen.io/vincentccw/pen/qbGtF

我想测试我当前的css left值是否等于3%但是jquery似乎没有验证....

我的HTML:

<div id="slideHorizontal">
  this is a div
</div>

我的css:

#slideHorizontal{
  position:relative;
  left:3%;
}

我的jQuery:

$('body').click(function(){
        alert("you click");

  if($('#slideHorizontal').css("left") == 3+"%"){
      alert("0");
  }

});

1 个答案:

答案 0 :(得分:1)

DEMO

var css = (Math.ceil( 100 * parseFloat($('#slideHorizontal').css("left")) / parseFloat($('#slideHorizontal').parent().css('width')) ) + '%';

css属性返回像素,因此您无法将其与%

进行比较

所以我使用上面的公式将css转换为%

$('body').click(function () {
    alert("you click");
    var css =Math.ceil( 100 * parseFloat($('#slideHorizontal').css("left")) / parseFloat($('#slideHorizontal').parent().css('width')) ) + '%'; 
    console.log(css);
    if (css == 3 + "%") {
        alert("0");
    }
});