代码如下 :

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>打字游戏</title>
<style type="text/css">
    b{
        position:absolute;
        
    }
</style>
<script type="text/javascript">
    
    function startGame(){
        
        var words = "QWERTYUIOPASDFGHJKLZXCVBNM";//要生成的所有字母
        var wordArray = [];//存放产生的字母的数组
        var makeWordPer = 500;//字母产生的间隔时间
        var downPer=200;//字母下落间隔时间
        var downLen = 10;//每次下落的距离
        var colors = ["red","green","blue","orange"];//字母可能出现的颜色
        //点击开始游戏后隐藏按钮
        var btn = document.getElementById("startBtn");//获得按钮元素
        btn.style.display="none";
        //周期性生成字母
        setInterval(function(){
            var index = Math.random()*26;//字母在字符串中的索引
            var word = words.charAt(index);//获得生成的字母
            var b = document.createElement("b");
            b.innerHTML=word;//将获得的字母添加到<b>标签中去
            var width = document.documentElement.clientWidth;//浏览器宽度
            b.style.left = Math.random()*width-20+"px";//字母出现位置,预留20px防止字母显示到页面外
            b.style.top = "0px";
            b.style.color = colors[parseInt(Math.random()*colors.length)];//字母颜色随机产生
            wordArray.push(b);
            document.body.appendChild(b);
        },makeWordPer);
        //让字母向下掉
        setInterval(function(){
            for(var i = 0;i<wordArray.length;i++){
                var w = wordArray[i];//取到<b>标签
                var oldTop = parseInt(w.style.top);
                var newTop = oldTop+downLen;
                var pageHeight = parseInt(document.documentElement.clientHeight)-20;//页面高度,同样预留20
                if(pageHeight>newTop){
                    w.style.top = newTop+"px";//设置新的top值,实现字母掉落效果
                }else{
                    //若字母落到底部则消失
                    w.parentNode.removeChild(w);
                    wordArray.splice(i,1);
                    i--;//恢复索引
                    var score = document.getElementById("score");
                    score.innerHTML = parseInt(score.innerHTML)-20;//失败一次得分减少20
                    if(parseInt(score.innerHTML)<-100){
                        location.href = "game.html";//失分超过100则重新开始游戏
                    }
                }
            }
        },downPer);
        //为页面添加键盘事件监听
        document.documentElement.οnkeydοwn=function(event){
            var keyCode = event.keyCode;
            var b = String.fromCharCode(keyCode);
        
            for(var i = 0;i<wordArray.length;i++){
                var j = wordArray[i].innerHTML;
                if(j==b){//若按键正确,则消除屏幕上的字母
                    wordArray[i].parentNode.removeChild(wordArray[i]);
                    wordArray.splice(i,1);
                    var score = document.getElementById("score");
                    score.innerHTML = parseInt(score.innerHTML)+10;//正确消除一次得分增加10
                }
            }
        }
    }
</script>
</head>
<body>
    <button id="startBtn" style="color:red" οnclick="startGame()">
        开始游戏
    </button>
得分:<span id="score">0</span>
</body>
</html>

主要由javascript实现的网页打字小游戏相关推荐

  1. 用javascript编写的打字小游戏

    最近在学ExtJs,看了蔡世友老师的视频课程,在第十课中留了一个小作业,就是用javascript写一个打字小游戏,于是按照前几课所讲的知识自己编写了一个. 一.需求:网页上在随机位置会出现字母,字母 ...

  2. JavaScript打字小游戏

    上半年自学了JavaScript,然后就做了个打字小游戏玩玩. 功能模块:                                         程序设计: 1.可选择游戏时间,显示倒计时 ...

  3. JavaScript-事件和事件对象、实现键盘打字小游戏

    JavaScript-事件和事件对象 一.事件介绍 事件一般是用于浏览器和用户操作进行交互.最早是IE和Netscape Navigator中出现,作为分担服务器端运算负载的一种手段.直到几乎所有的浏 ...

  4. 原生JS实现一个简单的打字小游戏

    原生JS实现一个简单的打字小游戏 利用javascript制作一个简单的打字小游戏 之前写了一个贪吃蛇小游戏好像反响不错 今天我来写一个比贪吃蛇更low更简单的打字小游戏 打字小游戏原理 接下来咋们直 ...

  5. Python 打字小游戏开发,来体验不一样的打字游戏乐趣(第二篇)

    Python 打字小游戏开发,来体验不一样的打字游戏乐趣(第二篇) 代码实现 窗口类 小车类 玩家类 电脑类 赛道类 小树类 打字类 Python 打字小游戏开发,来体验不一样的打字游戏乐趣(第一篇) ...

  6. 我的《上勾拳》网页单机小游戏有什么版权问题吗

    很遗憾,你上传的[<上勾拳>网页单机小游戏,发泄类型,可以自己上传音效适配,适配PC和安卓.大部分元素为SVG动画,云彩和火焰是canvas动画]没有通过审核,原因是:版权,如有疑问,请联 ...

  7. JAVA实现打字小游戏

    目录 一.效果 二.教程 三.代码 一.效果 首先我们先看效果,左上角的分数是用来记录我们打对了多少字母.字母是从上面开始往下落.每打对一个字母,分数增加,增加到一定分数后,字母下落的速度也会增加.( ...

  8. java实验2总结心得,打字小游戏JAVA实验总结及心得体会

    篇一:扫雷游戏实验报告 课程设计 班 级: 姓 名: 学 号: 指导教师: 成 绩: 电子与信息工程学院信息与通信工程系 目录 1.任务概述------------------------------ ...

  9. 如何在html上放小游戏,如何在网页插入小游戏

    如何在网页插入小游戏,有两种方法: 方法一:使用IE浏览器1.首先打开一个小游戏,等待他加载完毕,也就是等游戏可以玩的时候: 2.在浏览器的菜单栏上面,点击[工具],然后选择[internet选项]: ...

  10. Python 打字小游戏开发,来体验不一样的打字游戏乐趣(完结篇)

    Python 打字小游戏开发,来体验不一样的打字游戏乐趣(完结篇) 资源下载 完整代码 Python 打字小游戏开发,来体验不一样的打字游戏乐趣(第一篇) Python 打字小游戏开发,来体验不一样的 ...

最新文章

  1. s3cmd安装与使用
  2. 大数据征信需把控 数据源的“量”与“度”
  3. c++ double float 数值比较
  4. ABAP:BAPI_ACC_DOCUMENT_POST扩展字段
  5. GraphPad Prism 9.3 MacOS 2021科研绘图统计 支持Monterey 安装使用教程
  6. 不小心删表删库了,还能救
  7. xajax中的中文乱码问题
  8. 机器学习基础——支持向量机
  9. ionic 添加地图定位功能
  10. python .center用法_Python Pandas Series.str.center()用法及代码示例
  11. HDU-4089 Activation (概率DP求概率)
  12. 若依如何实现翻页保留选择?
  13. JSON格式解析和libjson使用简介-转
  14. Qt实现Areo效果
  15. std::atomic_thread_fence
  16. 【学习 OpenCV】—— Mat setTo/convertTo/copyTo
  17. 华为ENSP模拟器的安装
  18. css如何实现div背景透明
  19. 照片转3d模型_云从科技3D人体重建技术刷新3项纪录!仅凭照片即可生成精细模型...
  20. java 调用autoit_java和autoit连接

热门文章

  1. 火山安卓文件名类操作
  2. Linux命令之iconv命令
  3. 服务器2003系统U盘安装方法,u启动windows2003PE工具箱
  4. Windows server 2003-2016镜像下载
  5. hp进系统卡在w ndows界面,win10系统HP开机卡在LOGO界面的解决方法
  6. 特效编辑器开发手记3——保存纹理到plist Base64编码与Zip压缩(上源码)
  7. 查看linux操作系统版本信息
  8. 在linux配置端口映射,Linux 配置端口映射
  9. 生产系统建模仿真软件FactorySimulation
  10. 程序员数学(0)--序言