本文实例为大家分享了js实现金山打字通小游戏的具体代码,供大家参考,具体内容如下

字母匀速随机下落,键盘按下对应字母按键,字母消失重新生成新字母,新字母可帮助回调一部分初始高度

效果

1.页面内容

列表内放字母

  • A

**

2.页面样式

**

1)清除li园标

2)确定列表位置,为字母随机位置下降准备

*{

padding: 0;

margin: 0;

}

#box li{

list-style: none;

font-size: 100px;

}

/*确定位置便于下降*/

#box{

position: absolute;

top: 0;

left: 0;

}

3.判断按的按键

1、键盘按键按下事件

window.οnkeydοwn=function(e){ }

2、获得兼容性对象

var ev=window.event||e;

3.获得按下的键盘码并转换为对应按键

var key=String.fromCharCode(ev.keyCode);

4.遍历获得列表内容对比

1)循环li标签

for(var i=0;i

2)内容对比

if(list[i].innerHTML==key){ }

3)相同则删除页面上显示的字母

box.removeChild(list[i]);

5.清除字母后重新生成新的随机字母

1)在字母表中获得随机字母

var num=Math.floor(Math.random()*(all.length-1+1-0)+0);

2)将随机字母加入li中

var new_list=document.createElement('li');

3)给新li进行赋值

new_list.innerHTML=all[num];

4)将新li加入ul中

box.appendChild(new_list);

6.定时字母下落

1)设置定时器

var time=setInterval(function(){ },1000)

2)方法参考浮动广告博文

7.新字母的位置随机生成

1)消除成功后高度向上缩一部分

2)左右利用随机数生成

var left=Math.floor(Math.random()*(1000-1+1-0)+0);

box.style.left=left+"px";

8.源码

*{

padding: 0;

margin: 0;

}

#box li{

list-style: none;

font-size: 100px;

}

/*确定位置便于下降*/

#box{

position: absolute;

top: 0;

left: 0;

}

  • A

var p=document.getElementById("p");

var new_box=document.getElementById("new_box");

var box=document.getElementById("box");

var all='ABCDEFGHIJQLMEOPQRSTUVWXYZ';

window.οnkeydοwn=function(e){

// 获得兼容性对象

var ev=window.event||e;

// 获得按下的按键并转换为对应按键

var key=String.fromCharCode(ev.keyCode);

var list=document.getElementById("box").getElementsByTagName('li');

// 循环li标签,将按键与标签内容进行对比

for(var i=0;i

// 内容对比,内容相同则删除页面上显示的字母

if(list[i].innerHTML==key){

box.removeChild(list[i]);

var p_old_top=box.offsetTop;

var p_new_top=p_old_top-150;

box.style.top=p_new_top+"px";

var left=Math.floor(Math.random()*(1000-1+1-0)+0);

box.style.left=left+"px";

var num=Math.floor(Math.random()*(all.length-1+1-0)+0);

// 将随机字母加入li中

var new_list=document.createElement('li');

// 给新li进行赋值

new_list.innerHTML=all[num];

// 将新li加入ul中

box.appendChild(new_list);

}

}

}

// 定时器保证下落速度

var time=setInterval(function(){

// 获取ul的老位置

var old_top=box.offsetTop;

// 计算ul的新位置

var new_top=old_top+2;

// 将新值赋值回去

box.style.top=new_top+"px";

},15)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

C语言编一个金山打字通小游戏,js实现金山打字通小游戏相关推荐

  1. c语言设置一个选择数字的程序,C语言编一个数字益智小游戏

    程序功能及运行情况 设计的程序是一个数字益智游戏,旨在培养小朋友玩家的数学思维,提高玩家的数学能力.游戏共设有四个不同的小游戏,分别是一位数四则运算.两位数四则运算.找最值游戏.排序游戏.程序能实现产 ...

  2. php编写解一元一次方程,解释C语言(逐句) 解一元一次方程的 怎样用C语言编一个解一元二次方程的程序?...

    导航:网站首页 > 解释C语言(逐句) 解一元一次方程的 怎样用C语言编一个解一元二次方程的程序? 解释C语言(逐句) 解一元一次方程的 怎样用C语言编一个解一元二次方程的程序? 相关问题: 匿 ...

  3. c语言编一个开关量上升沿的程序,电工学(1)习题解答

    圈支路中串联KM2的辅助常闭即可. 5.图7.21所示控制电路能否实现既能点动.又能连续运行? 图7.21 解:不能点动. 第8章 检测题 一.填空题(每空1分) 1.PLC的工作方式是" ...

  4. c语言链表找姓,急啊!!!求救了 C语言编一个链表,输出姓名和学号就好

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct Node { int data; struct No ...

  5. 姓名和学号 c语言,急啊!!!求救了 C语言编一个链表,输出姓名和学号就好

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct Node { int data; struct No ...

  6. 输入学号姓名输出学号姓名c语言,急啊!!!求救了 C语言编一个链表,输出姓名和学号就好...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include typedef struct Node { int data; struct No ...

  7. 编写lisp程序解一元二次方程_怎样用C语言编一个解一元二次方程的程序?

    展开全部 用三个变量,来接一元二次方程的三个参数, 然后62616964757a686964616fe78988e69d8331333365633839根据这三个参数计算△=b*b-4ac,再根据△判 ...

  8. 计算开机时间c语言编程,一个计算电脑开机时间长短的程序,还有点小问题,请VC99大哥来指教...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 小弟我花了很长时间写了这个程序,目的是可以计算机电脑一个月的开机时间,比如说第一次开机3个小时,下一次开机还可以在3小时的基础上接着计时,这个程序,现在可 ...

  9. 用c语言编一个霓虹灯程序,基于单片机的霓虹灯控制系统设计.doc

    基于单片机的霓虹灯控制系统设计 目 录 0. 1 1. 总体方案设计1 2. 硬件电路的设计2 2.1 单片机系统2 2.2 LED概述3 2.3 外部时钟方式电路4 2.4 手动复位电路4 2.5 ...

最新文章

  1. sap linux下配置文件,Linux下配置sapjco3
  2. Dispatcher.Invoke方法
  3. 工业级别sd卡存贮slc mlc tlc
  4. Java的知识点25——IO、 数据源
  5. win2000server IIS和tomcat5多站点配置
  6. 回溯法求解N皇后问题(Java实现)
  7. 为什么声明性编码使您成为更好的程序员
  8. 面试官竟让我用Redis实现一个消息队列!
  9. Scala 2.8馆藏图书馆是“历史上最长的遗书”吗? [关闭]
  10. FragmentStatePagerAdapter写法
  11. VRTK summary
  12. YOLOv4画PR曲线
  13. vue插槽面试题_vue面试题(一)
  14. linux安装nginx、php、mysql搭建网站
  15. c# 时间格式化为英文_C# DateTime日期格式化
  16. 成都瀚网科技:抖音发作品到底需要多久的时间才能够给流量呢?
  17. C++中前置++,后置++,+,左移运算重载符详细介绍
  18. zookeeper系列(二)实战master选举 1
  19. JSON格式化工具下载
  20. OPPO软件测试面试经验

热门文章

  1. 初学Linux,了解基本命令
  2. 实变函数与泛函分析基础
  3. C++第七次作业(函数_递归与非递归_多文件)
  4. SKU解密,修改SKU的影响,修改SKU流量下滑原因
  5. 如何使用Spring Boot促进java开发?高级java架构师为您详解!
  6. 【PHP】PHP基本语法
  7. 使用EDI与SAP集成的解决方案
  8. 你知道:学校门口开什么店赚钱吗?分享学校门口暴利生意!
  9. vue全家桶+Echarts+百度地图,搭建数据可视化系统(项目)
  10. Windows快捷键总汇(来自官方)