Jquery生成随机数传递给if

时间:2013-08-25 18:14:21

标签: javascript jquery html css

我正在尝试在Jquery中创建一个随机数我不确定我是否需要存储它以执行下一部分也许你们可以帮我解决我的随机数生成器;

    $( "#arrowleftup" ).click(function() {
    var number = 1 + Math.floor(Math.random() * 10);
    $('#storenumber').text(number);
    });

当我点击ID为“arrowleftup”的Img时,我想生成一个随机数,然后我想把我的号码传递给它 -

If ('#storenumber' == 8=>){
$('.battle').show();
} else {
die
};

因此,如果数字为8或更高,它将显示隐藏的div,是否有人可以在我的代码中发现错误?我还需要存储值以将其传递到if语句

JSFiddle - http://jsfiddle.net/7t59E/

谢谢!

4 个答案:

答案 0 :(得分:4)

<强> DEMO

试试这个,

$(document).ready(function () {
    $("#battle").hide();
    $("#arrowleftup").click(function () {
        var number = 1 + Math.floor(Math.random() * 10);
        $('#storenumber').text(number);
        if (number >= 8) $("#battle").show();
        else $("#battle").hide();

    });
});

答案 1 :(得分:1)

无需将结果存储到dom元素

你可以通过

来做
$( "#arrowleftup" ).click(function() {
   var number = 1 + Math.floor(Math.random() * 10);
   $('.battle').hide();
   if (number >= 8){
        $('.battle').show();
   }
});

答案 2 :(得分:1)

您需要将代码放在事件处理程序中,以便在生成数字时执行它。在那里,您还可以访问number变量,而不是从元素文本中获取它:

$( "#arrowleftup" ).click(function() {
    var number = 1 + Math.floor(Math.random() * 10);
    $('#storenumber').text(number);
    if (number == 8) {
        $('.battle').show();
    } else {
        // do nothing
    }
});

updated jsfiddle,还包括.battle元素并加载jQuery库)

答案 3 :(得分:0)

你可以尝试这样的事吗?

$( "#arrowleftup" ).click(function() {

    $('#storenumber').text(parseInt(Math.random()*10));

    if (parseInt($('#storenumber').text()) > 4) {
        $("#toggleme").show();
    } else {
        $("#toggleme").hide();
    }

});

Demo