jquery 简单的别踩白块小游戏
写写简单的东西,效果如图:

1.html代码
<div class="warp">
<div class="title">
<h3>别踩白块</h3>
<p class="maxScore"></p>
</div>
<ul class="Garea">
</ul>
</div>
2.css代码
body,
ul,
li,
p {
margin:;
padding:;
} li {
list-style: none;
/*border: 1px solid #000;*/
} .warp {
width: 960px;
margin: 0 auto;
} .title {
text-align: center;
} .Garea {
border: 1px solid #000;
width: 300px;
height: 550px;
margin: 0 auto;
} .Garea li {
height: 90px;
} .Garea li p {
float: left;
width: 73px;
height: 100%;
border: 1px #c9c9c9 solid;
} .black {
background-color: #000;
}
3.js代码,记得先引入jquery
init(); // 初始化页面黑白块
function init() {
localStorage.setItem('score', '0'); // 初始化当前得分
var html = ''
for (let i = 0; i < 6; i++) {
html += '<li>';
var random = Math.floor(Math.random() * 3 + 1);
for (let j = 0; j < 4; j++) {
var black = "";
if (j == random) { black = "black" };
html += '<p class="' + black + '" onclick="cai(this);"></p>';
}
html += '</li>';
}
$("ul").prepend(html)
if (localStorage.getItem('maxScore')) {
$('.maxScore').html('历史最高分为:' + localStorage.getItem('maxScore'))
}
}
function cai(obj) {
//判断是否点击最后一行
if ($(obj).parent().index() != '5') {
return false;
}
//判断是否踩到白块
if (obj.className == "") {
if (localStorage.getItem('score') > localStorage.getItem('maxScore') - 1) {
alert("Game Over! You get the higher score is " + localStorage.getItem('score'));
} else {
alert("Game Over! Your score is " + localStorage.getItem('score'));
}
$('.maxScore').html('历史最高分为:' + localStorage.getItem('maxScore'))
localStorage.setItem('score', '0')
//游戏结束!
} else {
//游戏继续
$(obj).parent().remove();
var p = "";
var random = Math.floor(Math.random() * 4 + 1);
for (var i = 4; i >= 1; i--) {
var black = "";
if (i == random) { black = "black" };
p += '<p class="' + black + '" onclick="cai(this);"></p>';
};
var html = '<li>' + p + '</li>'
$("ul").prepend(html);
if (!localStorage.getItem('maxScore')) {
localStorage.setItem('maxScore', '0');
}
if (localStorage.getItem('score')) {
localStorage.setItem('score', localStorage.getItem('score') * 1 + 1)
if (localStorage.getItem('score') * 1 > localStorage.getItem('maxScore') * 1) {
localStorage.setItem('maxScore', localStorage.getItem('score') * 1)
}
}
}
};
完成。
jquery 简单的别踩白块小游戏的更多相关文章
- JS实现别踩白块小游戏
最近有朋友找我用JS帮忙仿做一个别踩白块的小游戏程序,但他给的源代码较麻烦,而且没有注释,理解起来很无力,我就以自己的想法自己做了这个小游戏,主要是应用JS对DOM和数组的操作. 程序思路:如图:将游 ...
- C++ 别踩白块小游戏练习
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <easyx.h> ...
- C++用EGE简单实现别踩白块游戏
本项目已开源:https://github.com/wmpscc/AvoidBlank 关于EGE 介绍:EGE(Easy Graphics Engine),是windows下的简易绘图库,是一个类似 ...
- 用javascript做别踩白块游戏1
初学Javascript做的一个别踩白块小游戏,代码简陋,如下: <!DOCTYPE html> <html> <head> <!-- 禁用缩放功能 --&g ...
- jquery之别踩白块游戏的实现
转载请注明出处http://www.cnblogs.com/Wxtrkbc/p/5687112.html 前端学习要告一段落了,也没机会写什么像样的东西,然后无意中想起某人以前给我玩了一下别踩白块的游 ...
- ios-高仿别踩白块游戏的实现
先看下效果图片 前几天看到一个游戏叫别踩白块,下载量还挺大几百万了都,下载下来玩了玩看了看,这个游戏还挺简单的.俗话说想一千遍,一万遍不如动手做一遍来的实在.昨晚以及今天白天闲的没事就开搞了,下午六点 ...
- cocos2dx游戏开发——别踩白块学习笔记(二)——经典模式的实现
一.创建GameScene以及GameLayer 就是简单创建一个Scene而已,在此就不多说啦~,可以参照我的打飞机的学习笔记(2). 二.添加一个开始栏 很简单,就是调用Block中的create ...
- Cocos2d-x 3.2 之 别踩白块(第三篇)
***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...
- 用javascript做别踩白块游戏2
这一次做一个好一点的,要求黑块自动下落,且速度逐渐加快 <!DOCTYPE html> <html> <head> <!-- 禁用缩放功能 --> &l ...
随机推荐
- Activity四种启动模式与Flag及affinity属性详解
Activity有四种加载模式:standard(默认).singleTop.singleTask.singleInstance standard:Activity的默认加载模式,即使某个Activi ...
- Python提示AttributeError 或者DeprecationWarning: This module was deprecated解决方法
Python提示AttributeError 或者DeprecationWarning: This module was deprecated解决方法 在使用Python的sklearn库时,发现sk ...
- 爬虫之验证码IP攻防心得——小总结
小前言: 一般来说,现在很多平台注册.登录的时候会涉及到验证码,这样做的目的是为了防止恶意程序恶意访问,从而给服务器造成一定的压力,会浪费一定的资源,大家也都知道,现在这种短信平台,邮箱平台等都是收费 ...
- 【CXF】com.sun.xml.internal.ws.fault.ServerSOAPFaultException: Client received SOAP Faul
在客户端生成代码之后测试出现错误: com.sun.xml.internal.ws.fault.ServerSOAPFaultException: Client received SOAP Faul ...
- Apriori 算法python实现
1. Apriori算法简介 Apriori算法是挖掘布尔关联规则频繁项集的算法.Apriori算法利用频繁项集性质的先验知识,通过逐层搜索的迭代方法,即将K-项集用于探察(k+1)项集,来穷尽数据集 ...
- Mysql被攻击
日志: show global variables like '%general%'; set global general_log=on; 默认Path:/var/run/mysqld/mysqld ...
- android camera(一):camera模组CMM介绍【转】
转自:https://blog.csdn.net/kevinx_xu/article/details/8821818 androidcmm图像处理工作手机三星 关键词:android camera ...
- 配置samba文件服务器
1.打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"--> ...
- Windows10 + Visual Studio 2017 + CMake +OpenCV编译、开发环境配置及测试
由于最近需要使用OpenCV,本人需要在自己的PC上使用OpenCV,因此最近一直在研究如何使用Visual Studio编译OpenCV源代码并搭建开发环境,折腾了很长时间,查阅了很多相关资料,终于 ...
- Oracle数据库操作基本语法
创建表 SQL>create table classes( classId number(2), cname varchar2(40), birthda ...