HTML 元素:
<div style="text-align:center;";">
<input style="align:center;" type="button" value="Roll" onClick='roll()';>
</div>
JavaScript 片段:
function roll(){
document.getElementById('test5').innerHTML=roll;
var roll;
document.getElementById('test').innerHTML=roll;
if (!(roll == 1 || roll == 2 || roll == 3)){
document.getElementById('test1').innerHTML='inLoop';
roll = 1;
}
//irrelavent code
var dice1=dice[0];
var dice2=dice[1];
var dice3=dice[2];
var dice4=dice[3];
var dice5=dice[4];
if (roll>=3){
score(dice1, dice2, dice3, dice4, dice5);
}
roll = storeRoll(roll);
document.getElementById('test4').innerHTML=roll;
};
function storeRoll(roll){
++roll
document.getElementById('test2').innerHTML='inFunction';
document.getElementById('test3').innerHTML=roll;
return roll;
};
我正在尝试使它,如果roll
尚未定义,它将设置为1
并在函数的末尾添加1
到roll
. 一旦有3
滚动,它就会调用该score
函数。在我的反复试验中,似乎roll
每次我重新启动函数时变量都会被重置。我在用户单击 HTML 输入按钮时多次执行该功能,因此循环将不起作用。每次单击按钮时,roll
变量都会重置。我想知道我的代码中是否有一些东西正在重置变量roll
。