主要是为了练习一下css3的3D翻转功能,就做了这么个小游戏,做的比较粗糙,但是效果看的见。

主要用到的css3代码如下:

html结构:

 <div class="container">
<div class="side"> <div class="front">
<!-- 正面 -->
</div> <div class="back">
<!-- 反面 -->
</div> </div>
</div>

对这部分设置的样式:

.container {
perspective:;
} .container:hover .side{
transform: rotateY(180deg);
} .container, .front, .back {
width: 320px;
height: 480px;
} .side {
transition: 0.6s; /*完成翻转所用的时间*/
transform-style: preserve-3d; /*让其子元素有3D翻转的效果。*/
position: relative;
} .front, .back {
backface-visibility: hidden; /*将反转了180度的隐藏*/
position: absolute;
} .front {
background-color: red;
} .back {
transform: rotateY(180deg);
background-color: blue;
}

这样,只要鼠标移入.container就会发生3D翻转;这个游戏中略有不同,是点击之后翻转,代码如下:
html结构:

 <div class="container">

         <div class="side">
<div class="front"><img src="data:images/face.jpg"></div>
<div class="back"><img src="data:images/1.jpg"></div>
</div>
.../*中间代码同上,省略*/
</div>

js部分:
 注意要引入jquery库,

 $(function(){

     var list=$(".side"),
count=0; for(var i=0;i<list.length;i++){ var t=0,
str=[],
p=[]; list[i].flag="ok";
list[i].index=i; list[i].onclick=function(){ if(this.flag==null){
this.onclick=function(){}
}
else{ t++;
str[t]=this.innerHTML;
p[t]=this.index; if(this.flag==="ok"){ $(this).css("transform"," rotateY(180deg)");
this.flag="error"; }else if(this.flag==="error"){
$(this).css("transform"," rotateY(0deg)");
this.flag="ok";
} if(t==2){ if(str[1]!=str[2]){
setTimeout(function(){ $(list[p[1]]).css("transform"," rotateY(0deg)");
$(list[p[2]]).css("transform"," rotateY(0deg)");
t=0; },500); list[p[1]].flag="ok";
list[p[2]].flag="ok"; }else{
count+=2;
list[p[1]].flag=null;
list[p[2]].flag=null; if(count==list.length){
alert("恭喜你过关!");
}
t=0;
} }
}
} } })

css部分主要的代码上面已经做过说明了,不再重复了,完整代码,请参见https://github.com/zhangyudan/js_jquery_css3-game。

css3+jquery+js做的翻翻乐小游戏的更多相关文章

  1. js实现表格配对小游戏

    js实现表格配对小游戏 一.总结 一句话总结: 二.js实现表格配对 1.配对游戏案例说明 实例描述: 当用户点击两个相同的图案或字符后配对成功,全部配对成功后游戏获胜 案例008采用了大家常见的小游 ...

  2. JS实现植物大战僵尸小游戏,代码记录及效果展示

    前几天看到了一个很有趣的demo,用js制作植物大战僵尸小游戏,本着学习的心态,对照着做了一下,发现这里面的一些代码设计的确很精妙,这里分享下源码和效果,如果有需要,可以看下. 效果如下: 下载地址

  3. HTML 5 +CSS3 + 原生js 做(雪花全屏飘落 + 3d旋转图)

    原文:HTML 5 +CSS3 + 原生js 做(雪花全屏飘落 + 3d旋转图) 3d旋转图:主要用css3中transform属性中的rotate,translate;以及用来做舞台效果的 pers ...

  4. 原生JS实现的h5小游戏-植物大战僵尸

    代码地址如下:http://www.demodashi.com/demo/12755.html 项目介绍 本项目是利用原生js实现的h5小游戏-植物大战僵尸,主要结合了一下自己对于h5小游戏的理解,结 ...

  5. jQuery实践-网页版2048小游戏

    ▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...

  6. 原生js写的flybird小游戏

    游戏地址:http://zangzhihong.jusukeji.com/flybird/index.html html部分 <!DOCTYPE html>   <!-- This ...

  7. 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)

    回顾 上一节我们搭建了游戏的骨架,添加了四个游戏场景,分别是加载.开始.游戏.结束.那么这一节我们来介绍加载这个场景,顺带丰富一下各个场景的基本内容. Phaser.Loader Phaser框架自带 ...

  8. 使用CSS3+jquery.js 实现微信抽奖转盘效果

    上次发表了一篇 微信抽奖转盘活动-效果源码分析 最近想起了刚接到这个项目时第一时间脑海里迸出的解决方法 “CSS3”! 为什么不能用CSS3来实现呢? 所以我打算用CSS3来实现这个效果.并不需要依赖 ...

  9. 突发奇想想学习做一个HTML5小游戏

    前言: 最近一期文化馆轮到我分享了,分享了两个,一个是关于童年教科书的回忆,一个是关于免费电子书的.最后我觉得应该会不敌web,只能说是自己在这中间回忆了一下那个只是会学习的年代,那个充满梦想的年代. ...

随机推荐

  1. linux 终端操作快捷键

    熟练使用快捷键可以很大的提高效率,以下列出一些常用的快捷键命令方便随时查阅 1. 移动光标 Ctrl + a 标移到行首.它在多数文本编辑器和 Mozilla 的 URL 字段内可以使用.Ctrl + ...

  2. log日志框架和LocationAwareLogger问题

    遇到了同样的问题, 我的解决办法是在pom.xml中增加如下配置,去除对于jcl-over-slf4j.jar的依赖. <exclusions>                <ex ...

  3. 我的Android进阶之旅------>Android 众多的布局属性详解

    Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料,希望对读者有用. 第一类:属性值为true或false android:layout_centerH ...

  4. Centos6.3下Ganglia3.6.0安装配置

    近期安装Ganglia.因为之前Linux基础基本为0.因此费了非常大的周折.最后在失败了好多次之后最终看到了梦寐以求的web界面.以下总结下这几天来的工作. ganglia是一个监控软件,他包括三部 ...

  5. MySQL数据库(4)_MySQL数据库外键约束、表查询

    一.外键约束 创建外键 --- 每一个班主任会对应多个学生 , 而每个学生只能对应一个班主任 ----主表 CREATE TABLE ClassCharger( id TINYINT PRIMARY ...

  6. Nginx -HTTP和反向代理服务器简单配置

    from:http://blog.sina.com.cn/s/blog_6b64b6a701011feh.html Nginx官方测试能够支持5万并发连接,实际生产环境中可支持2-4万并发连接数. 在 ...

  7. 纯代码编写qt登录界面(转)

    1. 新建Qt Widgets Application,项目名称为login1,在类信息页面保持类名和基类为MainWindow和QMainWindow不变,取消选择创建界面选项,如下图所示.     ...

  8. 【HackerRank】Find the Median(Partition找到数组中位数)

    In the Quicksort challenges, you sorted an entire array. Sometimes, you just need specific informati ...

  9. 主攻ASP.NET MVC4.0之重生:上下滑动屏幕动态加载数据

                @{ ViewBag.Title = "Index"; } <!DOCTYPE html> <html> <head> ...

  10. JS兼容各个浏览器的本地图片上传即时预览效果\、

    在firefox\chrome\ie10等浏览器中可以使用HTML5中的内容实现图片即时预览效果,在IE10以下浏览器中使用滤镜来解决图片显示问题. HTML5中的FileReader对象主要是把文件 ...