Javascript 正在寻找使用jQuery调试点击游戏的帮助

Javascript 正在寻找使用jQuery调试点击游戏的帮助,javascript,jquery,html,twitter-bootstrap,Javascript,Jquery,Html,Twitter Bootstrap,我正在尝试创建一个游戏,其中选择了一个随机数,并给出了四个按钮(它们最终将成为水晶) 我试图使每个按钮都有一个设置的隐藏值,目标是匹配给定的随机数 我原以为下面会给我这个,但我错了。玩家似乎在程序运行的第二秒就赢了,赢和输并没有像我从if语句中预期的那样写入html 我做错了什么 $(文档).ready(函数(){ var randomNumber=Math.floor(Math.random()*100)+1; var晶体数1; var晶体数2; var晶体数3; var晶体数4; var合

我正在尝试创建一个游戏,其中选择了一个随机数,并给出了四个按钮(它们最终将成为水晶)

我试图使每个按钮都有一个设置的隐藏值,目标是匹配给定的随机数

我原以为下面会给我这个,但我错了。玩家似乎在程序运行的第二秒就赢了,赢和输并没有像我从if语句中预期的那样写入html

我做错了什么

$(文档).ready(函数(){
var randomNumber=Math.floor(Math.random()*100)+1;
var晶体数1;
var晶体数2;
var晶体数3;
var晶体数4;
var合计=0;
var currentTotal=$(“总计”);
函数makeCrystal1(){
crystalNumber1=Math.floor(Math.random()*12)+1
};
函数makeCrystal2(){
crystalNumber2=Math.floor(Math.random()*12)+1
};
函数makeCrystal3(){
crystalNumber3=Math.floor(Math.random()*12)+1
};
函数makeCrystal4(){
crystalNumber4=Math.floor(Math.random()*12)+1
};
函数makeRandom(){
randomNumber=Math.floor(Math.random()*100)+1;
}
函数重置(){
makeRandom();
makeCrystal1();
makeCrystal2();
makeCrystal3();
makeCrystal4();
总数=0;
}
重置();
var-win=0;
风险价值损失=0;
$(“#随机数”)。追加(随机数);
函数addTo(编号){
总数=总数+数量;
}
$(“#晶体1”)。在(“单击”,函数(){
addTo(晶体编号1);
html(总计);
});
$(“#晶体2”)。在(“单击”,函数(){
addTo(晶体编号2);
html(总计);
});
$(“#晶体3”)。在(“单击”,函数(){
addTo(晶体编号3);
html(总计);
});
$(“#晶体4”)。在(“单击”,函数(){
addTo(晶体编号4);
html(总计);
});
如果(总数>随机数){
损失++;
重置();
$(“#messages”).html(“哦,不!你毁了你的水晶!”;
}
如果(总数=随机数){
wins++;
$(“#wins”).html(wins);
重置();
$(“#messages”).html(“你是水晶大师!”;
}
})

水晶游戏
水晶游戏你能匹配数字吗?
将出现一个随机数

点击水晶找出它们各自的价值

通过单击与数字匹配的正确水晶组合赢得游戏。不要看那个号码,否则你会输的

祝你好运

胜利:

损失:


目前的总数是:
问题:

  • 您的
    if()
    条件仅在页面加载时运行。将它们包装在一个可以在
    addTo()
    内调用的函数中,以便在每次总更改时进行检查。我将它们包装在
    函数checkStatus

  • 当您吹过该数字时,缺少
    $('#loss')
    的任何html插入

  • if(total=randomNumber)

  • 下面介绍了它的主要功能,但不打算重写整个应用程序或增强功能。一些重复的代码可以很容易地合并。。。就像对所有按钮使用一键式处理程序,并检查id以查看要添加的数字

    $(文档).ready(函数(){
    var randomNumber=Math.floor(Math.random()*100)+1;
    var晶体数1;
    var晶体数2;
    var晶体数3;
    var晶体数4;
    var合计=0;
    var currentTotal=$(“总计”);
    函数makeCrystal1(){
    crystalNumber1=Math.floor(Math.random()*12)+1
    };
    函数makeCrystal2(){
    crystalNumber2=Math.floor(Math.random()*12)+1
    };
    函数makeCrystal3(){
    crystalNumber3=Math.floor(Math.random()*12)+1
    };
    函数makeCrystal4(){
    crystalNumber4=Math.floor(Math.random()*12)+1
    };
    函数makeRandom(){
    randomNumber=Math.floor(Math.random()*100)+1;
    }
    函数重置(){
    makeRandom();
    makeCrystal1();
    makeCrystal2();
    makeCrystal3();
    makeCrystal4();
    总数=0;
    }
    重置();
    var-win=0;
    风险价值损失=0;
    $(“#随机数”)。追加(随机数);
    函数addTo(编号){
    总数=总数+数量;
    checkStatus();//添加了新的
    }
    $(“#晶体1”)。在(“单击”,函数(){
    addTo(晶体编号1);
    html(总计);
    });
    $(“#晶体2”)。在(“单击”,函数(){
    addTo(晶体编号2);
    html(总计);
    });
    $(“#晶体3”)。在(“单击”,函数(){
    addTo(晶体编号3);
    html(总计);
    });
    $(“#晶体4”)。在(“单击”,函数(){
    addTo(晶体编号4);
    html(总计);
    });
    函数checkStatus(){//添加了新的
    如果(总数>随机数){
    损失++;
    重置();
    $('#loss').html(loss);//添加了新的
    $(“#messages”).html(“哦,不!你毁了你的水晶!”;
    }
    如果(总数===随机数){
    wins++;
    $(“#wins”).html(wins);
    重置();
    $(“#messages”).html(“你是水晶大师!”;
    }
    }
    })
    
    水晶游戏
    水晶游戏你能匹配数字吗?
    将出现一个随机数

    点击水晶找出它们各自的价值

    通过单击与数字匹配的正确水晶组合赢得游戏。不要看那个号码,否则你会输的

    祝你好运

    胜利:

    损失: