Js制作的文字游戏
自己制作的文字游戏。(:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文字游戏</title>
<style type="text/css">
#wrap{
width: 400px;height: 550px;
border: 1px solid black;
margin: 50px auto 0px;
position: relative;
}
#left{
width: 80px;height: 30px;
position: absolute;
left: 30px;top: 10px;
}
#right{
width: 80px;height: 30px;
position: absolute;
right: 40px;top: 10px;
}
#one{
width: 250px;height: 250px;
/*background: green;*/
position: absolute;
left: 75px;top: 70px;
text-align: center;
line-height: 250px;
font-size: 150px;
}
p{
margin: 0;padding-top: 0;
width: 300px;height: 80px;
position: absolute;
left: 50px;top: 350px;
text-indent: 2em;
font-size: 25px;
}
#two{
width: 100%;height: 100px;
position: absolute;
left: 0;bottom: 0px;
}
#two span{
display: block;
width: 80px;height: 80px;
margin-top: 20px;
font-size: 70px;
text-align: center;
float: left;
cursor: pointer;
}
</style>
</head>
<body>
<div id="wrap">
<span id="left">时间:</span>
<span id="right">分数:</span>
<div id="one">黑</div>
<p>根据上面的字的颜色从下面选择正确的字,选择正确自动开始</p>
<div id="two">
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
</div>
<script type="text/javascript">
var left = document.getElementById('left');
var right = document.getElementById('right');
var one = document.getElementById('one');
var two = document.getElementById('two');
var span = two.getElementsByTagName('span');
var text = ['黑','蓝','黄','绿','红'];
var color = ['black','blue','yellow','green','red'];
// time = setInterval(function(){
// left.innerHTML = '时间:' + i + 's';
// i--;
// if (i < 0) {
// clearInterval(time);
// alert('Game Over');
// };
// },1000)
function num(){
var a = Math.floor(Math.random()*5);
return a;
}
function random (){
var five = [];
while(five.length < 5){
var rand = num();
if (five.indexOf(rand) == -1) {
five.push(rand);
}
}
return five;
}
function text2(){
var san = num();
si = num();
one.innerHTML = text[san];
one.style.color = color[si];
var yi = random();
var er = random();
for(var f = 0; f < span.length; f++){
span[f].innerHTML = text[yi[f]];
span[f].style.color = color[er[f]];
span[f].index = yi[f];
}
}
text2();
var score = 0;
var t = 10;
right.innerHTML = '分数:' + score;
left.innerHTML = '时间:' + t + 's';
var play = false;
for(var f = 0; f < span.length; f++){
span[f].onclick = function(){
if (si == this.index && t != 0) {
score++;
play = true;
right.innerHTML = '分数:' + score;
text2();
}else if (si != this.index && play) {
t--;
left.innerHTML = '时间:' + t + 's';
if (t <= 0) {
clearInterval(time);
play = false;
};
}
}
}
time = setInterval(function(){
if (play) {
t--;
left.innerHTML = '时间:' + t + 's';
if (t <= 0) {
clearInterval(time);
play = false;
alert('Game Over');
};
}
},1000)
</script>
</body>
</html>
Js制作的文字游戏的更多相关文章
- js制作带有遮罩弹出层实现登录小窗口
要实现的效果如下 点击“登录”按钮后,弹出登录小窗口,并且有遮罩层(这个名词还是百度知道的,以前只知道效果,却不知道名字) 在没有点击“登录”按钮之前登录小窗口不显示,点击“登录”按钮后小窗口显示,并 ...
- 基于node.js制作爬虫教程
前言:最近想学习node.js,突然在网上看到基于node的爬虫制作教程,所以简单学习了一下,把这篇文章分享给同样初学node.js的朋友. 目标:爬取 http://tweixin.yueyishu ...
- 用JS制作一个信息管理平台完整版
前 言 JRedu 在之前的文章中,介绍了如何用JS制作一个实用的信息管理平台. 但是那样的平台功能过于简陋了,我们今天来继续完善一下. 首先我们回顾一下之前的内容. 1.JSON的基础知识 ...
- 利用css+原生js制作简易钟表
利用css+原生js制作简单的钟表.效果如下所示 实现该效果,分三大块:html.javascript.css html部分html部分比较简单,定义一个clock的div,内部有原点.时分秒针.日期 ...
- JS制作图片切换
<!DOCTYPE html> <html> <head> <title>纯JS制作简单的图片切换</title> <meta cha ...
- 使用Vue.js制作仿Metronic高级表格(一)静态设计
Metronic高级表格是Metonic框架中自行实现的表格,其底层是Datatables.本教程将主要使用Vue实现交互部分,使用Bootstrap做样式库.jQuery做部分用户交互(弹窗). 使 ...
- 使用 原生js 制作插件 (javaScript音乐播放器)
1.引用页面 index.html <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- D3.js 制作中国地图 .net 公共基础类
D3.js 制作中国地图 from: http://d3.decembercafe.org/pages/map/index.html GeoJSON is a format for encoding ...
- 用js制作一个计算器
使用js制作计算器 <!doctype html> <html lang="en"> <head> <meta charset=" ...
随机推荐
- 启动kafka出现找不到或无法加载主类
首先确认下环境变量配置是否成功. 如果配置成功<javac,javah>都没有问题,那就有可能是你安装了两个版本的jdk导致的,都卸载了,然后换一个目录按照一个jdk 在配置环境变量试下!
- html5手写签名
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta co ...
- 【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
一.整体概览 首先看maven工程的创建 二.各层的文件配置 2.1,SSM父工程 <span style="font-family:KaiTi_GB2312;font-size:18 ...
- Spark Streaming架构设计和运行机制总结
本期内容 : Spark Streaming中的架构设计和运行机制 Spark Streaming深度思考 Spark Streaming的本质就是在RDD基础之上加上Time ,由Time不断的运行 ...
- 利用IDL将一个txt文档拆分为多个
测试.txt文档,每47行的格式相同,通过代码每47行存为一个txt,txt文档命名为其第一行数据. 代码如下: file='G:\data\测试.txt' openr,lun,file,/Get_L ...
- vi、vim 查找替换
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian ...
- 第六百零六天 how can I 坚持(应该是六百零六天吧)
找了个考研的借口,也是挺逗的,终于结束了,而且考的很渣. 最近发生了很多事,很快就要离开泛华了,放弃安逸,开始改变吧,其实感觉自己内心挺怂的,很怕改变,哎,这不像是有梦想,能成事的人应该有的. 还是想 ...
- NFS服务器原理
NFS服务器 port:2049 NFS 为 Network FileSystem 的简称,它的目的就是想让不同的机器.不同的操作系统可以彼此分享个别的档案啦!目前在 Unix Like ...
- assert的用法
assert用来调试时,判断一个语句是否为真. assert是宏,而不是函数.在C的assert.h 头文件中. assert的作用是先计算表达式 expression ,如果其值为假(即为0),那么 ...
- Linux系统yum命令安装软件时保留(下载)rpm包 -- 转载
昨天在部署zabbix监控的时候,遇到一个问题:监控服务器处于无外网状态,在线安装不可用.而某些依赖包度娘或谷姐搜索起来也挺呛人的!于是想到一个办法,利用有外网的服务器的yum命令来安装这些软件,并自 ...