Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 制造;“下一步”;钮扣_Javascript_Jquery_Button_Triggers - Fatal编程技术网

Javascript 制造;“下一步”;钮扣

Javascript 制造;“下一步”;钮扣,javascript,jquery,button,triggers,Javascript,Jquery,Button,Triggers,我正在创建一个简单的计算游戏,其中有一个填充了数字的网格。数字被隐藏,当游戏运行时,网格空间被高亮显示。旁边的div生成一个总和,以帮助用户获得正确答案。然后,用户单击相应的数字,这些数字会显示在位置上,并显示它们是对还是错 我只在下一个按钮(“.minibutton”)中添加了一个按钮,这样,如果用户三次答错了,他们就有机会进入下一个问题。该按钮还具有.trigger('click')功能,因此当一个单词正确完成时,它会自动移动并保持游戏流畅 我的问题是按钮停止工作,我不知道为什么。这是“.m

我正在创建一个简单的计算游戏,其中有一个填充了数字的网格。数字被隐藏,当游戏运行时,网格空间被高亮显示。旁边的div生成一个总和,以帮助用户获得正确答案。然后,用户单击相应的数字,这些数字会显示在位置上,并显示它们是对还是错

我只在下一个按钮(“.minibutton”)中添加了一个按钮,这样,如果用户三次答错了,他们就有机会进入下一个问题。该按钮还具有.trigger('click')功能,因此当一个单词正确完成时,它会自动移动并保持游戏流畅

我的问题是按钮停止工作,我不知道为什么。这是“.minibutton”功能

$('.minibutton').click(function() {
var sum = $('#answerlist li[data-answer="' + answer + '"]').data('sum');
$(right).val('');
$(wrong).val('');
$('td').removeClass('spellanswer');
score.wrong = 0;
var r = rndanswer;
while (r == rndanswer) {
    rndanswer = Math.floor(Math.random() * (listOfanswers.length));
}
当我添加此语句时,按钮停止工作

 //for (var x = 0; x < listOfanswers.length; x++) {
    //if (eval(sum.replace("=", "").replace("x", "*")) == listOfanswers[x].name) {
       // rndanswer = x;
   // }
//}

$('td[data-answer="' + listOfanswers[rndanswer].name + '"]').addClass('spellanswer');
$('td[data-answer=' + answer + ']').removeClass('answerglow').removeClass('answerglow4').removeClass('answerglow3').css('color', 'transparent');

var noExist = $('td[data-answer=' + listOfanswers[rndanswer].name + ']').hasClass('answerglow2');
if (noExist) {
    $('.minibutton').prop('disabled', false);

} else {

    $('.sumstyle').text(sum);
    sum.hide();

}
}).trigger("click");
//for(var x=0;x

运行JSFIDLE会出现以下错误:

Object 1 + 2 = has no method 'hide'
您试图隐藏字符串,这显然是错误的。这会导致脚本在该点之后停止执行。删除/注释掉
sum.hide()
,然后在三次错误猜测后出现“下一步”按钮


我已经编辑了JSIDLE,在函数顶部定义了
sum
(一个包含玩家试图回答的sum的文本字符串)和
seumElem
(包含sum的HTML元素):

…为什么不把JSIDLE放进去呢。。。。?我不打算请求它…运行JSFIDLE会出现以下错误:Object 1+2=没有“hide”方法您试图隐藏字符串,这显然是错误的…所以我应该去掉sum.hide()对吗?css('visibility'、'hidden')在massivepenguin上会更好吗?我认为问题在于您正在重新定义
sum
在脚本编写过程中的内容。
sum
实际上应该指什么?变量sum包含字符串值而不是元素。您必须尝试隐藏一个元素,声明
var sumElem=$('#answerlist li[data-answer=“'+answer+'']”])
,然后给出
sumElem.hide()
无论如何都会发生这种情况。它就是不起作用。我现在已经取出sum.hide()语句。我只是不明白为什么它不工作,它没有被禁用,而且在我添加'for(var x=0;xchosenanswers有关:此列表中充满了空格,这会进一步导致错误。这个列表应该是什么样子?“chosenanswers”应该是从填充网格@MassivePenguin的
  • 中随机选择的“数据答案”,我不知道为什么,但是你的“chosenanswers”列表偶尔会获得html元素(列表项),而不是值。我不知道我还能帮上多少忙——代码对于您试图实现的目标来说似乎过于复杂,而且您正在到处重新定义变量名。也许值得退一步,对代码进行抽象,保持变量的唯一性并在适当的范围内。很抱歉