js仿3366小游戏选字游戏


本文实例为大家分享了js仿3366小游戏中“你是色盲吗”游戏,大家先来挑战一下

游戏目标: 按画面中出现的文字的颜色来选择颜色,千万不要被颜色的困局打扰,眼睛一定要放亮哦,游戏开始时会有10分,每答对一题得一分,总共有10分,时间用完游戏会结束。
操作说明: 鼠标点击选择颜色

1、效果图:

原图:

模仿:

代码:

<!DOCTYPE html>
<html>
 
  <head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
      .wrap {
        width: 400px;
        height: 600px;
        border: 1px solid black;
        margin: 0 auto;
      }
       
      .head {
        width: 100%;
        height: 50px;
        overflow: hidden;
      }
       
      .time {
        float: left;
        width: 150px;
        height: 100%;
        line-height: 50px;
        font-size: 20px;
        text-align: center;
      }
       
      .score {
        width: 150px;
        height: 100%;
        float: right;
        line-height: 50px;
        font-size: 20px;
        /*text-align: center;*/
      }
       
      .middle {
        width: 100%;
        height: 450px;
      }
       
      .text {
        width: 100%;
        height: 300px;
        font-size: 200px;
        text-align: center;
        line-height: 300px;
      }
       
      .alert {
        width: 80%;
        height: 150px;
        margin: 0 auto;
        text-indent: 2em;
        font-size: 25px;
      }
       
      .bottom {
        width: 100%;
        height: 100px;
        overflow: hidden;
      }
       
      .bottomText {
        width: 20%;
        height: 100px;
        float: left;
        text-align: center;
        line-height: 100px;
        font-size: 70px;
        cursor: pointer;
      }
    </style>
  </head>
 
  <body>
    <div class="wrap">
      <div class="head">
        <div class="time">时间:10s</div>
        <div class="score">分数 :0</div>
      </div>
      <div class="middle">
        <div class="text">蓝</div>
        <div class="alert">根据上面的字的颜色从下面选择正确的字,选择正确自动开始</div>
      </div>
      <div class="bottom">
        <div class="bottomText">红</div>
        <div class="bottomText">绿</div>
        <div class="bottomText">黑</div>
        <div class="bottomText">蓝</div>
        <div class="bottomText">黄</div>
      </div>
    </div>
  </body>
  <script type="text/javascript">
    //变化的核心 获得不重复的乱序数组(数组中下标值)
     
    function random(min, max) {
      return parseInt(Math.random() * (max - min + 1)) + min;
    }
    //不重复的数组
    function randomArr() {
      var arr = [];
      while (arr.length < 5) {
        var temp = random(0, 4);
        if (arr.indexOf(temp) == -1) {
          arr.push(temp);
        }
      }
      return arr;
    }
    function fresh() {
      //中间字 变化
      var textIndex = random(0, 4);
       colorIndex = random(0, 4);
      textDiv.innerHTML = textArr[textIndex];
      textDiv.style.color = colorArr[colorIndex];
      //获取乱序下标数组
      var textRandoms = randomArr();
      var colorRandoms = randomArr();
      for (var i = 0; i < bottomDivs.length; i++) {
        //通过乱序下标获取文本,赋值给div
        bottomDivs[i].innerHTML = textArr[textRandoms[i]];
        bottomDivs[i].style.color = colorArr[colorRandoms[i]];
        //保存乱序下标
        bottomDivs[i].index = textRandoms[i];
      }
    }
    var textDiv = document.querySelector(".text");
    var bottomDivs = document.querySelectorAll(".bottomText");
    var timeDiv = document.querySelector(".time");
    var scoreDiv = document.querySelector(".score");
    var alertDiv = document.querySelector(".alert");
    var textArr = ["红", "绿", "蓝", "黄", "黑"];
    var colorArr = ["red", "green", "blue", "yellow", "black"];
     var colorIndex=0;
     var timer = null;
     var isplaying = false;
     var countDown = 10;
     var score = 0;
     fresh();
    for (var i = 0; i < bottomDivs.length; i++) {
      bottomDivs[i].onclick = function(){
        //判断
        if(colorIndex == this.index &&countDown!=0 ){
          //刷新
          score ++;
          isplaying =true;
          //分数增加
          fresh();
          scoreDiv.innerHTML = "分数: "+score ;
          alertDiv.style.opacity = 0;
        }else if(colorIndex != this.index &&isplaying){
          //点错时间减小
          countDown --;
          //更新时间变化
          timeDiv.innerHTML = "时间: " + countDown +"s";
          //判断清理定时器
          if(countDown <= 0){
            clearInterval(timer);
            isplaying = false;
          }
        }
      }
    }
    //定时器,监听游戏进行
    timer = setInterval(function(){
      if(isplaying){
        countDown --;
        timeDiv.innerHTML = "时间: " + countDown +"s";
        if(countDown <= 0){
          clearInterval(timer);
          isplaying =false;
          alert("game over!!");
        }
        //停止游戏
      }else{
         
      }
    },1000);
  </script>
 
</html>

以上就是本文的全部内容,希望大家能够挑战成功。



相关阅读:
node-http-proxy修改响应结果实例代码
Win10安装率高暴虐Win8!你就是第二个Vista
如何让安卓(Android)子控件超出父控件的范围显示
详细了解CSS中的class与id区别及用法
多个checkbox被选中时如何判断是否有自己想要的
Linux系统的电脑上调整屏幕亮度的方法
如何创建一个WinXP的域环境并将计算机加入到域中
《JavaScript高级编程》学习笔记之object和array引用类型
jquery+json实现数据二级联动的方法
node.js连接mongoDB数据库 快速搭建自己的web服务
PHP中开启gzip压缩的2种方法
win7电脑系怎么设置不睡眠、不自动黑屏?
详解PNG图片
Win10 10074最新预览版:Windows Defender有新家了
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 略阳-酒泉南 哈尔滨东-团结 平关-盘关 嘉峪关-昆山 元宝山-阜新南 东来-黄花筒 清水-阿克苏 六枝-遵义 武当山-南昌 牙拉盖图-桑根达来 渭南镇-甘谷 伊拉哈-八方 马兰-阿克苏 南昌西-古田北 梅河口-桥头 丰城-庐江 张维屯-汤山城 太平川-镇安 绥中-普兰店 广安-赣州 枣庄-威海北 邳州-乌鲁木齐南 顺德学院-广州南 贵定-金华 昆明-济源 雅河-古城子 邵武-阳新 江华-德安 上高镇-淄博 汉口-榆社 鄂州-嘉峪关 上万-良各庄 大同-呼和浩特 郑州-龙岩 滁州-三门峡南 郴州-徐水 秦皇岛-大连 开封-常州 涿州东-洪洞西 静海-黄松甸 连云港东-兰考 禹城-永康 贺州-石家庄 兖州-南昌 武功-襄阳 白洋淀-滨海北 香兰-铁岭 杭州-秀山 瑞金-福安 富县东-清涧县 厦门北-饶平 黄口-衡水 吉首-常德 沙城-保定 泰州-三门峡 白壁关-孝西 上海虹桥-潮汕 宁波-宜春 东南营子-小河沿 蒙自北-屏边 宣威-衡水 祁县-卓资东 定州-东安东 新乡-平邑 阳岔-水洞 铁岭-交城 合肥南-南京南 呼和浩特-正镶白旗 肇庆东-柳州 腰栈-红花沟 常德-重庆北 孙镇-甘泉北 古源-新高峰 义乌-太原 格尔木-苏州 大连北-鞍山 蚌埠-丹阳 常州-铜陵 秦皇岛-义县 渠县-高邑 请问南昌列车火车站的发票时间是什么啊谢了
如何从柳州做火车列车到辽宁省大连?
从建设路东站到天府大道边北段966号怎么乘车
发的EMS早就到了,但是他们邮局的人不派送,投诉也没人管,我该
许昌市去济源市该怎么坐车
温州到成都东的火车列车
水浒中方腊共占领了多少州县
从上海到青岛的火车列车有哪几个班次价格是多少需要花多少时间
从重庆到汉中宁强_从重庆到汉中宁强
常州到泰兴客车怎么做,多少钱?多少时间?
涿州到北京儿研所怎么坐车
请问汉口到重庆的T257次火车列车 是到重庆哪个站啊菜园坝龙头
湖州哪里可以买到不织布
从长春到辽源坐车要多长时间
苏州郭巷镇要转哪几路车到508公交线?
从上海到山东临沂市沂水县怎么走又省时,又省钱呢
从安康到大竹园的汽车客车什么时候有
韶关车站到全南的车几点发车途经南华寺吗到了南雄会进南
火车列车从福州开出的K30车次路上的停靠站
从福建厦门是否有直达广西柳州或来宾的汽车客车
谁能帮忙提供下郑州到邢台的汽车客车时刻表 谢了
合肥到普陀山线路
太原到唐山近还是西安到唐山近
宋代哥窑和定窑的特点和鉴别方法?
韶关到湛江吴川怎么坐车,请讲讲具体线路(站名)
请问到从徐州大庆的列车火车票现在有吗
广东广州到兴宁自行预订学生列车票什么时候开始
江门新车站到江门市广播电视大学点样坐车
福建南平有同去乐从采购家具的吗
现在从宁波市区到舟山汽车站要多久我的意思是从舟山

Copyright © 2016 phpStudy |