📄 poker.htm
字号:
<html><head>
<script language="JavaScript">
//全局变量定义
var card = new Array(); //存储4张牌
for (k=0;k<4;k++)
card[k]=0; //赋初值
var cardUsed = new Array(); //每张牌是否被使用过的标记
for (k=0;k<4;k++)
cardUsed[k] = false; //赋初值
var TimeID,StatID; //时间和状态标记
var count = 60; //计时器
function Init() { //初始化函数,生成4个随机数,并设置时间和状态标记
var i;
status = "您有1分钟的时间考虑与输入答案!";
for (i=0;i<4;i++) //用随机函数产生4张牌
card[i] = Math.ceil(Math.random()*9);
StatID = setTimeout("ChangeStatus()",1000);
TimeID = setTimeout("open('timeout.htm','timeoutWin','width=200,height=100');close()",60000);
} //End of Init
//状态栏刷新函数定义
function ChangeStatus() { //每隔1秒钟刷新一次状态栏显示
clearTimeout(StatID); //清除状态标记
count--; //剩余时间减少1秒
status = "剩余时间为:"+count+"秒";
setTimeout("ChangeStatus()",1000); //每隔1秒钟调用一次ChangeStatus
}
//输入合法性判断函数,若算式合法,返回true,否则返回false
function IsValid() { //判定用户输入的算式是否正确
var exp = document.expForm.expText.value; //取用户输入的算式
var expLen = exp.length; //算式长度
var i,j;
var numberUsed = 0; //算式中使用的运算数的个数
for (i=0;i<expLen-1;i++){
var ch = exp.charAt(i); //取第i个字符
if (ch>='0' && ch<='9') { //当前处理的是数值字符
for (j=0;j<4;j++)
if ((ch == card[j]) && (!cardUsed[j])) {
//该数字是否是给出的4个数之一且未被使用过
numberUsed++;
cardUsed[j] = true; //置数字已被使用过标记
}
}
else { //当前处理的是运算符
if ((ch!='+') && (ch!='-') && (ch!='*') && (ch!='/') && (ch!='(') && (ch!=')'))
{ alert("您输入的算式是非法的!");
return false;
}
}
}
if (numberUsed!=4) { //算式中未使用全部4个数字
alert("您输入的算式是非法的!");
return false;
}
return true;
}
function calResult() { //计算算式结果函数
clearTimeout(TimeID); //清除计时标记
if (IsValid()) { //算式合法
if (eval(document.expForm.expText.value)==24) //若算式的值等于24
{ //弹出新窗口,提示结果正确
winid = open("yes.htm","nwin1","width=200,height=100");
close();
return;
}
}
//算式的值不等于24或算式不合法,弹出新窗口,提示结果错误
winid = open("no.htm","nwin2","width=200,height=100");
close();
return;
}
</script></head>
<!—将输入焦点设置在答案输入框中-->
<body onLoad="document.expForm.expText.focus()">
<script language="JavaScript">
Init(); //生成四张牌
document.write("您可以使用的四张牌是:<br>");
for (i=0;i<4;i++)
document.write(card[i]+" ");
</script>
<br><form name="expForm">请在右边的输入框中输入您的答案:
<input type=text name="expText" size=12 value=" "><br><br><br>
<input type=button value="提交答案" onClick="calResult()">
<input type=button value="放弃该局" onClick="self.close()"></form></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -