感觉很流畅的js实现的键盘控制(带惯性)
发布时间:2024-04-30 10:11:38
标签:感觉很流畅的js实现的键盘控制(带惯性)
感觉很流畅的键盘控制(带惯性)
<body> <div id="man" style="position:absolute;width:50px;height:40px;top:200px;left:200px;background:red"></div> <button onclick="alert(keyCache.length)">ask</button> </body> <script> var keyCache = []; var isCache = false; var cacheNum = 0; document.onkeydown = insertKey; document.onkeyup = function(){if(!isCache && event.keyCode>=37&& event.keyCode<=40) keyCache.length = 0;} function insertKey(){ var kc = event.keyCode; if(kc>=37 && kc<=40){ if(kc!=keyCache[keyCache.length-1]){ keyCache.length = 0; keyCache.push(kc,kc,kc,kc,kc,kc) //保证流畅多注入6个 isCache = true; } keyCache.push(kc); } } window.setInterval("writeCache()", 50); function writeCache(){ if(keyCache.length==0) return; var kc = keyCache.shift(); switch(kc){ case 37: man.style.left = parseInt(man.style.left) - 5;break; case 38: man.style.top = parseInt(man.style.top) - 5;break; case 39: man.style.left = parseInt(man.style.left) + 5;break; case 40: man.style.top = parseInt(man.style.top) + 5;break; } if(isCache) cacheNum++; if(cacheNum == 5){ isCache = false; cacheNum = 0; } } </script>
0
投稿
猜你喜欢
- 新特性的产生背景在了解它怎么用之前,可以先了解一下它被推出的一些背景,可以帮助你对比开发体验上的异同点,以及了解为什么会有这一章节里面的新东
- 前言在对数据进行处理时我们常常会用到format与round函数。二者都能保留若干位小数,但在处理过程上稍有不同。不同之处返回类型不同:fo
- 接上一篇内容:https://www.jb51.net/article/249934.htm一、聚簇索引其实之前内容中介绍的 B+ 树就是聚
- 前言现在最流行的本地存储莫过于 cookie 的应用,但浏览器对 cookie 有很多限制,最大的限制在于其对cookie 总大小
- 什么是循环? —> 循环是有着周而复始的运动或变化的规律;在 Python 中,循环的操作也叫做 &lsq
- 一、含有一个装饰器#encoding: utf-8############含有一个装饰器#########def outer(func):
- EasyUI 简介easyui是一种基于jQuery的用户界面插件集合。easyui为创建现代化,互动,JavaScript应用程序,提供必
- 1.前言版本:Python3.6.1 + PyQt5写一个程序的时候需要用到画板/手写板,只需要最简单的那种。原以为网上到处都是,结果找了好
- 1.什么是守护进程守护进程是脱离于终端并且在后台运行的进程。守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会
- 前面章节我们学些了文件对象的创建、写入与读取,并且针对 .py 文件 与 .txt 文件进行了有针对性的小练习。 通过前面的学习我们知道,文
- 定义流的作用是使用统一的方式处理文件、网络和数据压缩等共用同一套函数和用法的操作。简单而言,流是具有流式行为的资源对象。因此,流可以线性读写
- 此文主要讲述的是SQL Server连接中经常出现的3个常见错误,以及对这三个错误的详细分析,如果你其心存好奇的话,以下的文章将会揭开它的神
- 学习如何使用 Python 的 Pygame 模块编程电脑游戏,并开始操作引力。真实的世界充满了运动和生活。物理学使得真实的生活如此忙碌和动
- 如下所示:import http.client, urllib.parseimport http.client, urllib.parsei
- matlab中的filter函数:y = filter(b,a,x)python实现matlab中的filter函数def filter_m
- 视频的播放过程可以简单理解为一帧一帧的画面按照时间顺序呈现出来的过程,就像在一个本子的每一页画上画,然后快速翻动的感觉。但是在实际应用中,并
- 下面给大家分享python 字符串string的内置方法,具体内容详情如下所示:#__author: "Pizer Wang&qu
- 一、常用文件函数库1、basename(); -- 返回路径中的文件名部分。string basename ( string $path [
- 本文实例讲述了smarty简单分页的实现方法,分享给大家供大家参考。具体实现方法如下:以下是模板中的smarty代码,用smarty简单的代
- 本文实例讲述了python使用sorted函数对列表进行排序的方法。分享给大家供大家参考。具体如下:python提供了sorted函数用于对