控制台日志未反映所有请求;jQuery未在html中显示

控制台日志未反映所有请求;jQuery未在html中显示,jquery,Jquery,大脑正在融化。我不明白为什么我的数字没有显示在HTML上。首先,这是我不知道的,我在索引文件上切换了引导和jQuery链接的顺序,这有助于修复一个完整的谜团,我修复了所有的语法错误,现在我在控制台中没有收到任何错误,但我也没有记录我的console.logs。当我将鼠标悬停在addValues函数和click函数上时,它们都会显示“void”,但我找不到错误,也不明白为什么它没有登录到控制台。我是一个学习型开发者 //全局变量 var晶体={ 紫色: { 名称:“紫色”, 数值:0 }, 绿色

大脑正在融化。我不明白为什么我的数字没有显示在HTML上。首先,这是我不知道的,我在索引文件上切换了引导和jQuery链接的顺序,这有助于修复一个完整的谜团,我修复了所有的语法错误,现在我在控制台中没有收到任何错误,但我也没有记录我的console.logs。当我将鼠标悬停在addValues函数和click函数上时,它们都会显示“void”,但我找不到错误,也不明白为什么它没有登录到控制台。我是一个学习型开发者

//全局变量
var晶体={
紫色:
{
名称:“紫色”,
数值:0
},
绿色:{
名称:“绿色”,
数值:0
},
橙色:{
名称:“橙色”,
数值:0
},
明星:{
名称:“星”,
数值:0
},
};
//得分
var yourScore=0;
var targetScore=0;
//胜负
var winCount=0;
var lossCount=0;
//功能
//数学函数,这样我们可以得到一些随机数
var getRandom=函数(最小值、最大值){
返回Math.floor(Math.random()*(max-min+1))+min;
};
//开始比赛
var startGame=函数(){
//重置当前分数
你的分数=0;
//设置新的目标分数(介于19和120之间)
targetScore=getRandom(19120);
//设置每个晶体的rand值(介于1和12之间)
crystal.green.value=getRandom(1,12);
crystal.orange.value=getRandom(1,12);
crystal.purple.value=getRandom(1,12);
crystal.star.value=getRandom(1,12);
//jQuery将输入添加到HTML
$(“你的分数”).text(你的分数);
$(“#目标分数”).text(目标分数);
//这些都有用吗?
控制台日志(“目标分数:+targetScore”);
控制台.log(“绿色:+crystal.Green.value+”;橙色:+crystal.Orange.value+”;紫色:+crystal.Purple.value+”;星形:+crystal.Star.value);
console.log(“-------------------------------”;
};
//检查我们是赢了还是输了,然后重新设置游戏
var checkWin=函数(){
//如果你输了,你会做什么
如果(yourScore>targetScore){
警惕(“对不起,你输了。”);
log(“你输了。”);
//添加到损失计数器
lossunt++;
//更改html
$(“#损失统计”).text(损失统计);
//重新开始游戏
startGame();
}
else if(yourScore===targetScore){
警惕(“祝贺你!你赢了!”);
log(“你赢了”);
//加赢计数器
winCount++;
//通过jQuery更改HTML中的赢数
$(“#赢得计数”).text(winCount);
//重新启动gaem
startGame();
}
};
//当你点击水晶时,应该会有一个附加值。。。
var addValues=函数(晶体){
//改变你的分数
yourScore=+crystal.value;
//添加jQuery以连接到html
$(“你的分数”).text(你的分数);
//调用checkWin函数
checkWin();
//它起作用了吗?不,它不起作用(
log(“你的分数:+yourScore”);
};
//主要过程
//第一次开始游戏。
startGame();
$(“#紫色”)。单击(函数(){
附加值(结晶紫);
});
$(“#绿色”)。单击(函数(){
addValues(水晶绿);
});
$(“#橙色”)。单击(函数(){
addValues(水晶色、橙色);
});
$(“#星”)。单击(函数(){
addValues(crystal.star);
});

水晶游戏
水晶收藏家游戏
说明书

游戏开始时,您将获得一个随机数。
下面有四个水晶。单击水晶可将分数添加到您的总分中。通过单击水晶以匹配随机数来赢得游戏。当您单击水晶且数字超过随机数时,游戏将失败。在您单击水晶之前,每个水晶的值都是隐藏的。
对于每一个新游戏,随机数会发生变化,每个水晶的值也会发生变化。
祝你好运

目标分数 0 你的分数 0 胜算 0 损失计数 0 晶体计数
单击事件不起作用,因为在呈现元素之前JavaScript正在运行。您可以通过将事件放入文档就绪函数中来解决此问题:

$(document).ready(function () {
    $("#purple").click(function () {
        addValues(crystal.purple);
    });

    $("#green").click(function () {
        addValues(crystal.green);
    });

    $("#orange").click(function () {
        addValues(crystal.orange);
    });

    $("#star").click(function () {
        addValues(crystal.star);
    });
    startGame();
});

我们必须单击或悬停什么才能看到问题?在javascript文件上显示=>void,并且html上没有出现随机数。我收到了另一个解决问题的答案。我需要一个$document.ready(函数()来包围我的jQuery click函数。