用jquery 和 jquery.simulate.js 实现模拟键盘事件,点击上下左右div相当于点击键盘的上下左右键

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /><title></title><style type="text/css">#box {width: 50px;height: 50px;position: absolute;left: 50%;top: 50%;transform: translate(-50%, -50%);background: lightskyblue;}.box-wrapper {width: 100px;height: 100px;position: fixed;bottom: 0;left: 0;background: blue;}.box {float: left;background-color: orange;font-size: 30px;width: 50px;text-align: center;height: 50px;}.box:nth-child(1){background-color: pink;}.box:nth-child(4){background-color: blueviolet;}</style></head><script type="text/javascript">window.onload = function() {var box1 = document.getElementById("box");document.onkeydown = function(event) {event = event || window.event; /*||为或语句,当IE不能识别event时候,就执行window.event 赋值*/console.log(event.keyCode);switch(event.keyCode) { /*keyCode:字母和数字键的键码值*//*37、38、39、40分别对应左上右下*/case 37:box1.style.left = box1.offsetLeft - 10 + "px"; /*图形左移*/break;case 38:box1.style.top = box1.offsetTop - 10 + "px"; /*图形上移*/break;case 39:// alert("你点击了右键");// alert(box1.offsetLeft + 10 + "px");box1.style.left = box1.offsetLeft + 10 + "px"; /*图形右移*/break;case 40:box1.style.top = box1.offsetTop + 10 + "px"; /*图形下移*/break;}}}</script><body><div id="box"></div><div class="box-wrapper"><div class="box" ontouchend="arrow_click(2,'up')" ontouchstart="arrow_click(1,'up')">↑</div><div class="box" ontouchend="arrow_click(2,'down')" ontouchstart="arrow_click(1,'down')">↓</div><div class="box" ontouchend="arrow_click(2,'left')" ontouchstart="arrow_click(1,'left')">←</div><div class="box" ontouchend="arrow_click(2,'right')" ontouchstart="arrow_click(1,'right')">→</div></div></body><script src="jq3.1.1.js" type="text/javascript" charset="utf-8"></script><script src="jquery.simulate.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">function arrow_click(k_type, type) {var t = jQuery.simulate.keyCode;var e = $('#box');var k_event = k_type == 1 ? 'keydown' : 'keyup';switch(type) {case 'right':$(e).simulate(k_event, {keyCode: t.RIGHT});break;case 'left':$(e).simulate(k_event, {keyCode: t.LEFT});break;case 'up':$(e).simulate(k_event, {keyCode: t.UP});break;case 'down':$(e).simulate(k_event, {keyCode: t.DOWN});break;case 'space':$(e).simulate(k_event, {keyCode: t.SPACE});break;}}</script></html>

初识 jquery.simulate.js 模拟键盘事件相关推荐

  1. 【键盘】jQuery+CSS3模拟键盘事件(精)

    jQuery+CSS3模拟键盘事件是一款基于jQuery的模拟键盘事件的应用,键盘上除了功能键,其他键都可以用这款插件来模拟.当你敲击键盘上的键时,这款应用会帮助你获取到这个键的事件,并在页面上的模拟 ...

  2. php接收键盘事件,js获取键盘事件的方法实例

    本文主要和大家分享js获取键盘事件的方法实例,希望能帮助到大家. document.οnkeydοwn=function(event){ var e = event || window.event | ...

  3. selenium 模拟键盘事件 复制粘贴、右键、回车等

    [selenium 模拟键盘事件 复制粘贴.右键.回车等] #coding=utf-8 ''' selenium ''' from selenium import webdriver as wd im ...

  4. web自动化测试第7步:模拟键盘事件(Keys)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/CCGGAAG/article/deta ...

  5. Android电子牌外接USB读卡器读取内容模拟键盘事件

    最近做了一个Android外接USB读卡器刷手环读取数据,模拟键盘输入事件的项目; 借鉴了https://github.com/githubRonda/BarcodeScanner 连接电子牌板子调试 ...

  6. 使用JS模拟键盘、鼠标操作

    //只在chrome测试过,大部分应用场景在webkit,所以不做其他兼容// 模拟键盘输入 window.inputValue = function (dom, st) {var evt = new ...

  7. Web自动化测试:模拟键盘事件(Keys)

    如何使用引入的common.keys库来模拟键盘来操控浏览器 一.基础写法 具体用法其实和我们之前对浏览器输入框所用的方法:send_keys()是一样的,只不过我们通过keys类,可以输入webdr ...

  8. selenium模拟键盘事件(回车、删除、刷新等)

    需要引入keys from selenium.webdriver.common.keys import Keys sendkeys可以模拟键盘输入和键盘上的按键: send_keys(Keys.BAC ...

  9. vue封装的 全屏js 禁止键盘事件 获取当前浏览器类型 获取当前的屏幕宽高

    开启全屏 export function fullScreen(){var el = document.documentElement,rfs = el.requestFullScreen || el ...

最新文章

  1. python计算平方用map函数_python的map函数的使用方法详解以及使用案例(处理每个元素的自增、自减、平方等)...
  2. ++i 和 i++ 效率分析(C++)
  3. Python进阶_wxpy学习:愉快的探索和调试
  4. Activity管理
  5. python中的常量是什么意思_第14p,Python中的常量与注释。
  6. 虚拟机安装 服务器 Ubuntu Server20.04.2
  7. https post 报400地址匹配不正确_如何发布领英动态post/article?
  8. linux内核添加模块,linux中添加内核模块
  9. qml中对于动态遮照效果的封装
  10. 汉生机器人_2019高工机器人核心零部件会议
  11. spring mvc和spring的区别
  12. python之requests模块
  13. linux未找到命令rpm,RPM命令执行失败:bash: rpm: 未找到命令...
  14. No handler found for OPTIONS /lca/lcaplan/lcaplanprocess/list
  15. 《GPU编程与CG语言之阳春白雪下里巴人》阅读笔记 第一章+第二章
  16. CS5216 Capstone DP to hdmi 1080p转换器或者转接线设计原理|CS5216 DP转HDMI转换电路原理图
  17. 工地信息化——施工现场网格化管理系统实施小记
  18. mysql 自动添加创建时间、更新时间
  19. 详解:化工厂人员定位方案与双重预防机制建设
  20. 谋杀一个程序员最好的方式原来是这个

热门文章

  1. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整
  2. STM32开发笔记117:使用Matlab生成IIR低通滤波器系数
  3. 数据结构与算法(java版)
  4. 基于SSM架构的新闻管理系统设计与实现论文
  5. C语言课程设计之火车订票系统
  6. Android仿QQ空间二级评论列表
  7. 【C++】特殊类设计
  8. sesehtneraPdilaV.20
  9. test an interface(测试接口)-博学之,审问之,慎思之,明辨之,笃行之-iteye技术网站
  10. 什么是计算机思维呢?