这是我一年前写的一个小游戏(具体什么时候忘记了)

链接:记忆力训练(移动端)

想和我交流的话可以邮件我,邮箱在第三部分。

第一部分:页面的设计框架

对于每个小方块或者说每一行我并没有采用js来自动生成(.lines):似乎就算使用js也不能简化我的标签,也不能优化性能,或许能够降低流量传输,但是对于这个项目来说这样不到1kB的数据似乎是不用担心的。

另外在#temp部分,我将所有图片直接读入了,而不是在需要的时候读入,这样做的原因是:在网络不好的情况下游戏时,如果根据需要读入图片,可能使得初次游戏过程不流畅;一次性全部读入的话默认情况是可以使图片缓存,因而不用担心再次游戏时流量的问题,并且初次使用时不会有卡顿(源于拉取图片)。

 <body><div id="transition"><h2>游 戏 结 束</h3><h3>得分:</h2><h3>用时:</h2></div><div id="game"><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div><div class="lines"><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""><img src="" alt=""></div></div><div id="begin"><span>得分:000</span><button>开始</button><span>时间:000</span></div><div id="info"><span>设置</span><span>帮助</span></div><div id="setting">背景色:<select name="" id="setting_color"><option value="5">恢复</option><option value="1">白色</option><option value="2">黑色</option><option value="3">灰色</option><option value="4">蓝色</option>    </select><br><br>
<!--             背景音乐:<input type="checkbox" id="check_music"><br> --><button id="setting_form">确定</button></div><div id="help"><h3>记忆力训练</h3><ul><li>点击开始系统在随机位置生成一张图</li><li>点击该图并记忆位置,游戏界面黑屏</li><li>约0.5s后屏幕重新点亮并有一张新图在随机位置生成</li><li>点击该图并记忆位置,游戏界面黑屏</li><li>重复上述过程</li><br><li>任何问题请邮件我:<a href="mailto:jack_cbc@163.com">jack_cbc@163.com</a></li></ul><div id="temp"><img src="icon/14.png" alt=""><img src="icon/15.png" alt=""><img src="icon/16.png" alt=""><img src="icon/17.png" alt=""><img src="icon/18.png" alt=""><img src="icon/19.png" alt=""><img src="icon/20.png" alt=""><img src="icon/21.png" alt=""><img src="icon/22.png" alt=""><img src="icon/23.png" alt=""><img src="icon/24.png" alt=""><img src="icon/25.png" alt=""><img src="icon/26.png" alt=""><img src="icon/27.png" alt=""><img src="icon/28.png" alt=""><img src="icon/29.png" alt=""><img src="icon/30.png" alt=""><img src="icon/31.png" alt=""><img src="icon/32.png" alt=""></div></div>
<!--         <video controls loop name="bgmusic"><source src="http://wvvw.peiyin.me/yinyue-16-2015-08-08-e11313acc1e9a455a6a0a7b1af1ee0a5.mp3" type="audio/mp3"></video> --></body>

第二部分:CSS

 <style>html{padding: 0 0;margin: 0 0;}body{background: #222;padding: 0 0;margin: 0 0;}a{text-decoration: none;}.lines,#begin,#info,#setting{width:100%;vertical-align: middle;text-align: center;}.lines img{display: inline;width:12%;/*border:1px solid #aaa;*/margin: 0 0;padding: 0 0;border: 0;background: #222;}#begin button , #setting button{margin:0 20px;margin-top: 10px;background: #aaa;color:#222;padding: 10px 20px;border-radius: 5px 5px 5px 5px;outline: none;}#begin span{color:#aaa;}#info{width:100%;line-height: 30px;background: #aaa;position: absolute;bottom:0;}#info span{width: 50%;margin: 0 30px;padding: 0 30px;text-align: center;}#setting{background: #aaa;width:100%;padding: 5px 5px;position: absolute;top:0;display: none;}#setting select{padding: 5px 5px;margin-top: 10px;}#setting button{border: 0;background: #eee;margin: 20px 0;}#help{width:100%;background: #aaa;padding: 5px 5px;position: absolute;top:0;text-align: center;display: none;}#help li{margin:10px 5px;text-align: initial;}#temp{display: none;}#transition{width:100%;position: absolute;top:0;text-align: center;padding: 50px 0px;color:#fff;opacity: 0.8;display: none;}video{display: none;}input[type="checkbox"]{height:10px;width:20px;}</style>

第三部分:JS代码

之前写代码居然没有注释!!!

如果你想和我交流的话可以邮件我jack_cbc@163.com

<script type="text/javascript">// 没有注释!!!var time_sec = 0;var get_score = 0;var imgs = document.getElementsByTagName('img');var imgs_sort = new Array();var temp_index = 0;var temp_img;var time_flow;var flag_help = 0;var flag_setting = 0;for(var loop = 0 ; loop < 63 ; loop++)imgs_sort[loop] = loop;function ShowTime(){var string;if(time_sec < 10)string = "时间:00" + time_sec;else if(time_sec < 100)string = "时间:0" + time_sec;else string = "时间:" + time_sec;document.getElementById("begin").getElementsByTagName("span")[1].innerHTML = string;time_sec++;}function InitVector(imgs_sort){imgs_sort.sort(function(a,b){ return Math.random() > 0.5 ? -1 : 1;});}function AddClick(){for(var loop = 0 ; loop < 63 ; loop++)imgs[loop].onclick = ClickSite;}function GetScore(){var string;get_score++;if(get_score < 10)string = "得分:00" + get_score;else if(get_score < 100)string = "得分:0" + get_score;else string = "得分:" + get_score;document.getElementById("begin").getElementsByTagName("span")[0].innerHTML = string;}function ClickSite(){var this_part = this.src.split(".");if(this_part[this_part.length - 1] != "html"){if(this.index == (imgs_sort[temp_index-1] + 1)){var time = new Date();var time_1 = time.getTime();var time_2 = new Date();GetScore();//alert(time_1);if(parseInt(get_score) == 63){var score = "得分:" + get_score;var time = "用时:" + (parseInt(time_sec)-1) + "s";var transition =  document.getElementById("transition");transition.getElementsByTagName("h2")[0].innerHTML = "大师,你赢了!"transition.getElementsByTagName("h3")[0].innerHTML = score;transition.getElementsByTagName("h3")[1].innerHTML = time;transition.style.display = "block";document.getElementById("begin").getElementsByTagName("button")[0].innerHTML = "继续";document.getElementById("begin").getElementsByTagName("button")[0].style.visibility = "visible";clearInterval(time_flow);}        else{document.getElementById("game").style.visibility = "hidden";var imgs_index = parseInt(Math.random() * (14 + 1) + 14 , 10);temp_img = imgs_index;imgs[imgs_sort[temp_index]].src = "icon/" + imgs_index + ".png";window.setTimeout("document.getElementById(\"game\").style.visibility = \"visible\"",500);temp_index++;}              }else {imgs[imgs_sort[temp_index-1]].style.border="1px red solid";var score = "得分:" + get_score;var time = "用时:" + (parseInt(time_sec)-1) + "s";var transition =  document.getElementById("transition");transition.getElementsByTagName("h2")[0].innerHTML = "游 戏 结 束";transition.getElementsByTagName("h3")[0].innerHTML = score;transition.getElementsByTagName("h3")[1].innerHTML = time;transition.style.display = "block";document.getElementById("begin").getElementsByTagName("button")[0].innerHTML = "继续";document.getElementById("begin").getElementsByTagName("button")[0].style.visibility = "visible";clearInterval(time_flow);}}}function ShowHelp(){if(!flag_help){document.getElementById("help").style.display = "block";flag_help = 1;}else {document.getElementById("help").style.display = "none";flag_help = 0;}}       function ImgBgcolor(color){for(var loop = 0 ; loop < 63 ; loop++)imgs[loop].style.background = color;}function GetForm(){var color = document.getElementById("setting_color");var body = document.getElementsByTagName("body")[0];switch(color.value){case "1" : body.style.background = "#eee"; ImgBgcolor("#eee"); break;case "2" : body.style.background = "#000"; ImgBgcolor("#000"); break;case "3" : body.style.background = "#666"; ImgBgcolor("#666"); break;case "4" : body.style.background = "#00f"; ImgBgcolor("#00f"); break;case "5" : body.style.background = "#222"; ImgBgcolor("#222"); break;}// var check_music = document.getElementById("check_music");// if(check_music.checked)//     {//         alert(0);//         document.getElementsByTagName("video")[0].autoplay = "autoplay";//     }document.getElementById("setting").style.display = "none";flag_setting = 0;}function ShowSetting(){if(!flag_setting){document.getElementById("setting").style.display = "block";flag_setting = 1;}else {document.getElementById("setting").style.display = "none";flag_setting = 0;}}function BeginGame(){if(this.innerHTML != "继续"){var imgs_index = parseInt(Math.random() * (14 + 1) + 14 , 10);temp_img = imgs_index;imgs[imgs_sort[temp_index]].src = "icon/" + imgs_index + ".png";temp_index++;this.style.visibility = "hidden";time_flow = window.setInterval("ShowTime()",1000);}else{imgs[imgs_sort[temp_index-1]].style.border="0";get_score = 0;time_sec = 0;document.getElementById("begin").getElementsByTagName("span")[0].innerHTML = "得分:000";document.getElementById("begin").getElementsByTagName("span")[1].innerHTML = "时间:000";for(var loop = 0 ; loop < 63 ; loop++)imgs[loop].src = "";InitVector(imgs_sort);document.getElementById("transition").style.display = "none";var imgs_index = parseInt(Math.random() * (14 + 1) + 14 , 10);temp_img = imgs_index;imgs[imgs_sort[temp_index]].src = "icon/" + imgs_index + ".png";temp_index++;this.style.visibility = "hidden";time_flow = window.setInterval("ShowTime()",1000);}}window.onload = function(){for(var loop = 0 ; loop < 63 ; loop++){imgs[loop].height = imgs[loop].width;imgs[loop].index = loop + 1;}document.getElementById("transition").height = (imgs[loop - 1].height) * 9;//alert(document.getElementById("transition").height);InitVector(imgs_sort);AddClick();document.getElementById("begin").getElementsByTagName("button")[0].addEventListener("click" ,BeginGame);document.getElementById("info").getElementsByTagName("span")[1].addEventListener("click" ,ShowHelp);document.getElementById("info").getElementsByTagName("span")[0].addEventListener("click" ,ShowSetting);document.getElementById("setting_form").addEventListener("click" ,GetForm);// alert("陆争是小笨蛋!!!");}</script>

这是我第一次写的文章,JS部分没有注释的问题希望我下次能记得写上吧!(现在正在开组会~~~)源码: https://github.com/caibingcheng/caibingcheng.github.io/tree/master/blog/app/game

下一篇文章我打算分享我的2048代码,写了一年多,好像也没有注释!!!

以后的文章内容可能会多偏向于计算机视觉图像处理部分。

记忆力训练--网页小游戏相关推荐

  1. java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技 ...

  2. 微信网页小游戏网站源码带后台+可后台添加游戏+推荐到微信

    微信网页小游戏网站源码带后台,淘宝上卖的很火的源码,免费公开!

  3. 遥控汽车网页小游戏html源码

    这是一个网页小游戏源代码 你可以开着小汽车在整个地图中旅行 可撞墙.可鸣笛.自己发现吧 无聊时可以用它打消下无聊的时间 首页注释挺详细的,可自行修改 运行不成功注意文件引用的路径 路径 路径 快来下载 ...

  4. 遥控汽车网页小游戏源码

    介绍: 这是一个网页小游戏源代码 你可以开着小汽车在整个地图中旅行 可撞墙.可鸣笛...自己发现吧 无聊时可以用它打消下无聊的时间 首页注释挺详细的,可自行修改 运行不成功注意文件引用的路径 路径 路 ...

  5. 搭建2048网页小游戏

    本文已发表于本人博客 哔哔哔哔-搭建2048网页小游戏 玩羊了个羊玩腻的话,可以试试2048 前言 仓库地址 https://github.com/gst-be/2048 本站演示站点 https:/ ...

  6. 利用js制作的简单网页小游戏

    利用html和js制作的简单的网页小游戏 这个是我第一次利用js制作网页的小游戏,若有错误欢迎指出. 设计的游戏是类似于配对的小游戏.废话不多说,直接上代码,代码中有比较详细的说明. <!DOC ...

  7. 你写一个web网页小游戏

    写一个 web 网页小游戏需要以下几个步骤: 选择一种编程语言,常用的有 HTML.CSS.JavaScript 和 Python. 使用编辑器创建一个 HTML 文件,这个文件将是你的网页的基础. ...

  8. 分享几款手写有趣的html5网页小游戏

    有技术含量的有趣网页小游戏,大众编程,你也可以!下载链接见文章末尾 下载链接:https://pan.baidu.com/s/11hD0fd4a2gJCSqZ5Eh1-jw 提取码:6sps

  9. 经营管理、策略经营类社区网页小游戏推荐

    爱游戏网旗下的游戏种类最多,展示推荐的网页小游戏都是经过层层筛选 经营管理 | 策略经营 | 社区网页小游戏 梦幻岛 胡莱旅馆 幸福厨房 荣光医院 运镖天下 梦幻校园 欢乐客栈 夜店大亨 有间客栈 开 ...

最新文章

  1. Mybatis-plus常用API全套教程,看完没有不懂的
  2. 史上最全!图解浏览器的工作原理
  3. etcd nginx 容器_Etcd+Confd实现Nginx配置文件自动管理
  4. 《How to bake LightMap》
  5. 软件测试-常见数据库笔试题
  6. 北京少儿python培训视频教程
  7. python33个保留字基本含义_Python保留字总结
  8. S7-1200使用集成库FB285控制G120变频器的基本步骤
  9. 史上最全Java学习路线
  10. i7 13650hx参数 酷睿i713650hx性能怎么样相当于什么水平
  11. 搭建网站,需要几种服务器?
  12. AtCoder Beginner Contest 170 F. Pond Skater
  13. springboot成都大学校园植物网站毕业设计-附源码181557
  14. 单片机实现跑马灯c语言程序,用单片机编写几种跑马灯程序
  15. BSCI验厂审核知识点
  16. 认识世界和改造世界 [马原]
  17. php获取12306余票,获取12306余票信息
  18. ASP.NET MVC5 多语言国际化
  19. C语言边沿触发函数,边沿触发在Verilog中又分为两种-Read.PPT
  20. JAVA练习题8:遍历数组求和,求平均值以及比平均值小的数据

热门文章

  1. Java根据word模板填充数据(使用poi-tl)
  2. 盐城北大青鸟:学生缺乏什么?目标!
  3. 性能测试爬坑之路23 ---- 测试结果分析
  4. 85、弱电工程网络由基础到深入知识集锦
  5. OpenBCI_GUI部件指南
  6. 一年有可能学完大学计算机吗,如何用一年时间,学完麻省理工大学4年33门课程?...
  7. 四川双流高中2021高考成绩查询,2021四川高中排名一览表 最新排名
  8. RStudio显示无法打开网页-RStudio打开后一片空白的解决方法
  9. CRE6959TV65V055介绍
  10. macbook关于https 证书.p12文件转出私钥,公钥,crt文件,cre文件