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

效果

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)

html获取随机字母,前端js——金山打字通小游戏(屏幕随机下落字母,获取键盘按键)...相关推荐

  1. 前端js——金山打字通小游戏(屏幕随机下落字母,获取键盘按键)

    字母匀速随机下落,键盘按下对应字母按键,字母消失重新生成新字母,新字母可帮助回调一部分初始高度 效果 1.页面内容 列表内放字母 <ul id="box"><li ...

  2. C语言编一个金山打字通小游戏,js实现金山打字通小游戏

    本文实例为大家分享了js实现金山打字通小游戏的具体代码,供大家参考,具体内容如下 字母匀速随机下落,键盘按下对应字母按键,字母消失重新生成新字母,新字母可帮助回调一部分初始高度 效果 1.页面内容 列 ...

  3. 【Unity2d】带你制作一款类似于金山打字的小游戏

    博主大概08年开始接触电脑游戏,当时玩的是我哥的电脑,那时候家里没网,只可以玩电脑上自带的单机游戏,比如扫雷.蜘蛛纸牌等等,当然还有红色警戒.冰封王座.星际争霸.帝国崛起等等,这些大概是我哥当时在大学 ...

  4. Javascript开发的金山打字简易小游戏

    记得以前读书的时候,由于课前都预习过了,所以听课一般都是为了给老师面子很"耐心"的坐在教室里,发着呆走着神.突然,那天上课讲了几天前预习的课题,采用JS可以识别键盘输入,嘿嘿,好玩 ...

  5. 类似于金山打字的小游戏

    今天信息奥赛课,老师让我们做一道题目.主要是为了了解C语言中的头函数#include<time.h>和#include<conio.h> time头文件测试时间 conio头文 ...

  6. 【原生JS】做一个打字消除小游戏,学习摸鱼两不误

    JS打字消除小游戏 话不多说先看效果! 页面布局: CSS样式: JS文件(重点): 话不多说先看效果! JS打字消除游戏 页面布局: <!DOCTYPE html> <html&g ...

  7. 前端(js/css/html)那些小的知识点,持续更新......

    前端(js/css/html)那些小的知识点,持续更新...... 1.行内元素与块级元素有哪些及区别? 块级元素和行内元素的区别是,块级元素会占一行显示,而行内元素可以在一行并排显示.通过样式控制, ...

  8. 解决金山打字通不能缩小窗口问题

    前段时间,在学五笔, 用的是金山打字通, 但是金山打字通只能全屏显示,这个本没有什么的, 但是我又想在练习的同时看电影,所以这样缩小窗口就显得很重要了 在网上搜索了一下发现金山打字通本身就不能全屏. ...

  9. 小白练打字:金山打字通

    对于小白来说,首先肯定练打字,那么打字软件就很必要了,比如金山打字通 打开界面是这样 如果是完全小白,先用新手入门熟悉键盘 稍有基础则选英文打字进一步熟悉 最后当然练中文 除此之外还有打字 这就是打字 ...

最新文章

  1. Jenkins部署SpringBoot应用到远程服务器
  2. 怎么升级浏览器_下载的chrome无法访问此网站怎么解决
  3. FTP的dos命令使用方法
  4. 鼎捷软件怎么样_凯里物流仓储怎么样
  5. 行内元素和块级元素的区别,为何img、input等行内元素可以设置宽高??(夯实基础)
  6. python提取文本中的手机号_Python从vcf文件中读取手机号并进行去重操作
  7. leetcode刷题日记-供暖器
  8. 数学建模之统计回归模型详解
  9. xlsx文件打开乱码_我的 EXCEL 工作表打开出现乱码?(xlsx文件打开是乱码怎么办)...
  10. 2018年3月江苏省计算机二级C语言真题第1套
  11. 迅捷PDF转换器特点和使用步骤
  12. 冯诺依曼结构和哈佛结构
  13. 关系型数据库的物理连接
  14. WEB-QTP随想录—李密的猜想
  15. java算法:1234组成无重复的三位数
  16. Java随笔记 - Java代码实现一个死锁程序
  17. sFlow的安装和使用
  18. Android studio实现动态背景页面(动态视频为背景)
  19. qq农场 源码java_HappyFarm 仿QQ农场游戏源代码 - 下载 - 搜珍网
  20. 端午节,我用 Python 画了一盘粽子送给大家

热门文章

  1. MacOS Terminal 常用快捷键大全
  2. 维基解密曝光CIA Marble框架:用于躲避取证人员的调查
  3. 数据库:笛卡儿积、连接、等值连接、自然连接、外连接、嵌套循环连接、排序合并连接、索引连接和哈希连接
  4. rfcn 共享_LTE无线频谱划分及RFCN
  5. 在SNAP中用sentinel-1数据制作DEM
  6. 几何算法——6.曲线曲面求交的方法总结(国内外文献调研、思考和总结)
  7. 浙江省南浔区家庭光伏企业规范要求
  8. finally在什么时候执行
  9. idea怎么查找代码
  10. svn 切换修改地址