1

我正在尝试在 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

4 回答 4

4

演示

尝试这个,

$(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();

    });
});
于 2013-08-25T18:23:29.073 回答
1

无需将结果存储到 dom 元素中

你可以通过

$( "#arrowleftup" ).click(function() {
   var number = 1 + Math.floor(Math.random() * 10);
   $('.battle').hide();
   if (number >= 8){
        $('.battle').show();
   }
});
于 2013-08-25T18:20:55.307 回答
1

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

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

更新的 jsfiddle,还包括一个.battle元素和加载 jQuery 库)

于 2013-08-25T18:24:09.583 回答
0

你可以试试这样的东西吗?

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

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

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

});

演示

于 2013-08-25T21:10:44.597 回答