JS设置自定义快捷键并实现图片上下左右移动


Posted in Javascript onOctober 17, 2019

JS代码实现自定义热键

实现功能:

1.自定义上下左右键

2.使用自定义热键或者使用键盘上下左右键移动图片

效果图:

JS设置自定义快捷键并实现图片上下左右移动

步骤1:

HTML代码:

<!DOCTYPE html>
<html>
 <head lang="en">
 <meta charset="UTF-8">
 <title>使用自定义按键实现图片移动</title>
 <style type="text/css">
  table {
  border-collapse: collapse;
  }
 </style>
 <script src="js/key.js"></script>
 </head>
 <body>
 <img id="img" src="img/Koala.jpg" align="center" style="width: 80px;height: 80px;position: absolute;left:0px;top: 0px" />
 <table align="center" border="1">
  <tr>
  <td align="center" colspan="2">修改上下左右键</td>
  </tr>
  <tr>
  <td>上:</td>
  <td><input type="text" onkeyup="myFunction('up')" maxlength="1"></td>
  </tr>
  <tr>
  <td>下:</td>
  <td><input type="text" onkeyup="myFunction('down')" maxlength="1"></td>
  </tr>
  <tr>
  <td>左:</td>
  <td><input type="text" onkeyup="myFunction('left')" maxlength="1"></td>
  </tr>
  <tr>
  <td>右:</td>
  <td><input type="text" onkeyup="myFunction('right')" maxlength="1"></td>
  </tr>
  <tr>
  <td align="center" colspan="2"><input type="button" value="确定" onclick="confirm()" /></td>
  </tr>
 </table>
 </body>
</html>

步骤2:

JS:

var up, down, left, right;
var up1, down1, left1, right1;
var obj = document.getElementById("img");
obj.left = 0;
obj.top = 0;
//通过设置四个不同参数来进行判断
function myFunction(str) {
 var Key = window.event.keyCode;
 //当str=设置的参数时把key赋值给up1
 if (str == "up") {
 up1 = Key;
 }
 if (str == "down") {
 down1 = Key;
 }
 if (str == "left") {
 left1 = Key;
 }
 if (str == "right") {
 right1 = Key;
 }
}
//确定函数事件
function confirm() {
 //把up1赋值给up
 up = up1;
 down = down1;
 left = left1;
 right = right1;
 alert("您设置的热键键值为:" + up + ";" + down + ";" + left + ";" + right);
 fkey();
}
function fkey() {
 console.log(event.keyCode);
 var Key = window.event.keyCode;
 //获取你自定义的键和键盘上下左右键都可以用
 if (Key == 37 || Key == parseInt(left)) {
 //左
 obj.left -= 80;
 }
 if (Key == 38 || Key == parseInt(up)) {
 //上
 obj.top -= 80;
 }
 if (Key == 39 || Key == parseInt(right)) {
 //右
 obj.left += 80;
 }
 if (Key == 40 || Key == parseInt(down)) {
 //下
 obj.top += 80;
 }
 obj.style.left = obj.left + "px", obj.style.top = obj.top + "px";
}
document.onkeydown = fkey;

总结

以上所述是小编给大家介绍的JS设置自定义快捷键并实现图片上下左右移动,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js判断是否为数组的函数: isArray()
Oct 30 Javascript
Javascript aop(面向切面编程)之around(环绕)分析
May 01 Javascript
jQuery获取DOM节点实例分析(2种方式)
Dec 15 Javascript
window.close(); 关闭浏览器窗口js代码的总结介绍
Jul 14 Javascript
分享一个精简的vue.js 图片lazyload插件实例
Mar 13 Javascript
详解angularJs模块ui-router之状态嵌套和视图嵌套
Apr 28 Javascript
JavaScript中EventLoop介绍
Jan 22 Javascript
javascript动态创建对象的属性详解
Nov 07 Javascript
原生javascript自定义input[type=radio]效果示例
Aug 27 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
Sep 19 Javascript
vue倒计时刷新页面不会从头开始的解决方法
Mar 03 Javascript
解决vant-UI库修改样式无效的问题
Nov 03 Javascript
JavaScript 实现同时选取多个时间段的方法
Oct 17 #Javascript
Layui事件监听的实现(表单和数据表格)
Oct 17 #Javascript
浅谈Vue.set实际上是什么
Oct 17 #Javascript
Vuex modules模式下mapState/mapMutations的操作实例
Oct 17 #Javascript
vuex + keep-alive实现tab标签页面缓存功能
Oct 17 #Javascript
Weex开发之地图篇的具体使用
Oct 16 #Javascript
WEEX环境搭建与入门详解
Oct 16 #Javascript
You might like
Smarty的配置与高级缓存技术分享
2012/06/05 PHP
php使用glob函数遍历文件和目录详解
2016/09/23 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
深入理解JavaScript系列(12) 变量对象(Variable Object)
2012/01/16 Javascript
jquery $.each 和for怎么跳出循环终止本次循环
2013/09/27 Javascript
js实现简单的星级选择器提交效果适用于评论等
2013/10/18 Javascript
jQuery基于图层模仿五星星评价功能的方法
2015/05/07 Javascript
jQuery实现鼠标划过添加和删除class的方法
2015/06/26 Javascript
Javascript实现检测客户端类型代码封包
2015/12/03 Javascript
辨析JavaScript中的Undefined类型与null类型
2016/05/26 Javascript
jquery自适应布局的简单实例
2016/05/28 Javascript
详解ES6之async+await 同步/异步方案
2017/09/19 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
禁止弹窗中蒙层底部页面跟随滚动的几种方法
2017/12/07 Javascript
解析vue路由异步组件和懒加载案例
2018/06/08 Javascript
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
vant中的toast轻提示实现代码
2020/11/04 Javascript
python daemon守护进程实现
2016/08/27 Python
CentOS中升级Python版本的方法详解
2017/07/10 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
Django框架model模型对象验证实现方法分析
2019/10/02 Python
python实现输出一个序列的所有子序列示例
2019/11/18 Python
Python Json数据文件操作原理解析
2020/05/09 Python
使用Pycharm在运行过程中,查看每个变量的操作(show variables)
2020/06/08 Python
Python通过字典映射函数实现switch
2020/11/06 Python
Agoda西班牙:全球特价酒店预订
2017/06/03 全球购物
Discard Protocol抛弃协议的作用是什么
2015/10/10 面试题
端午节活动策划方案
2014/03/09 职场文书
工商管理自荐书
2014/07/06 职场文书
县政府办公室领导班子对照检查材料思想汇报
2014/09/28 职场文书
三方股东合作协议书
2014/10/28 职场文书
有限责任公司股东合作协议书
2014/12/02 职场文书
教师个人年度总结
2015/02/11 职场文书
2015年医院保卫科工作总结
2015/07/23 职场文书
检讨书范文
2019/04/16 职场文书
java实现对Hadoop的操作
2021/07/01 Java/Android