如何在Jquery if语句中使用随机数计数器

时间:2017-03-13 05:50:35

标签: javascript jquery

我正在玩if语句,但我遇到了麻烦。我想将随机数传递给变量,然后能够根据点击事件发生一些事情。

以下是我玩过的,但它不起作用:

$(document).ready(function() {
  var $r;

  $('.cell').click(function() {
    $r = Math.floor(Math.random() * 5);
    if $($r == 3) {
      $(this).addClass('img');
    } else {
      $(this).css("background-color", "‎#708090").slideUp(150).slideDown(150);

    }

  });
});

3 个答案:

答案 0 :(得分:2)

这里和那里只是一些错别字。我还将.removeClass添加到条件中,因此如果run num不是3,则可以删除.img样式:

var r = Math.floor(Math.random() * 5);
if (r == 3) {
    $(this).addClass('img');
} else {
    $(this).removeClass('img');
    $(this).css("background-color", "#708090").slideUp(150).slideDown(150);
}

https://jsfiddle.net/04m0fgxj/6/

答案 1 :(得分:2)

syntex中的一些事情是错误的。额外的'$'和'})'。

 $('.cell').click(function() {
   $r = Math.floor(Math.random() * 5);
   //$r=3; // uncomment this for check addClass img
   if ($r == 3) {
     $(this).addClass('img');
   } else {
     $(this).css("background-color", "#708090").slideUp(150).slideDown(150);

   }

 });
.cell {
  width: 100px;
  margin: auto;
  border: 3px solid;
  height: 100px;
}
.img{
    background-color: red;
}
   
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class='cell'>

</div>

答案 2 :(得分:1)

Try this code

var r;
    $(".cell").click(function(){
       r = Math.floor(Math.random() * 5);
            if (r == 3) {
                    $(this).addClass('img');
            } else {
                    $(this).css("background-color","#708090").slideUp(150).slideDown(150);

            }
    });

There is no necessary of declaring a variable in $