我正在玩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);
}
});
});
答案 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);
}
答案 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 $