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 相关文章推荐
jQuery实现点击文本框弹出热门标签的提示效果
Nov 17 Javascript
jQuery实现的文字hover颜色渐变效果实例
Feb 20 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
May 27 Javascript
jQuery 中ajax异步调用的四种方式
Jun 28 Javascript
利用Jquery队列实现根据输入数量显示的动画
Sep 01 Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
Jun 27 Javascript
基于Vue实现后台系统权限控制的示例代码
Aug 29 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 Javascript
Vue 与 Vuex 的第一次接触遇到的坑
Aug 16 Javascript
微信小程序实现的图片保存功能示例
Apr 24 Javascript
vue实现图片上传到后台
Jun 29 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
对PHP PDO的一些认识小结
2015/01/23 PHP
php面向对象中static静态属性与方法的内存位置分析
2015/02/08 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
WordPress中用于更新伪静态规则的PHP代码实例讲解
2015/12/18 PHP
php 开发中加密的几种方法总结
2017/03/22 PHP
基于jquery的地址栏射击游戏代码
2011/03/10 Javascript
基于jquery实现简单的分页控件
2016/03/17 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
Vue中使用webpack别名的方法实例详解
2018/06/19 Javascript
JS秒杀倒计时功能完整实例【使用jQuery3.1.1】
2019/09/03 jQuery
js数组相减简单示例【删除a数组所有与b数组相同元素】
2020/03/04 Javascript
Python Json序列化与反序列化的示例
2018/01/31 Python
Python wxPython库消息对话框MessageDialog用法示例
2018/09/03 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
python异步Web框架sanic的实现
2020/04/27 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
2020/11/11 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
html5默认气泡修改的代码详解
2020/03/13 HTML / CSS
Canvas 文本填充线性渐变的使用详解
2020/06/22 HTML / CSS
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
售后服务经理岗位职责
2014/02/25 职场文书
2014年社区个人工作总结
2014/12/02 职场文书
优秀教师申报材料
2014/12/16 职场文书
大学生助学金感谢信
2015/01/21 职场文书
青春雷锋观后感
2015/06/10 职场文书
《大禹治水》教学反思
2016/02/22 职场文书
六一儿童节致辞稿(3篇)
2019/07/11 职场文书
导游词之五台山
2019/10/11 职场文书
浅谈MySQL next-key lock 加锁范围
2021/06/07 MySQL
MySQL系列之十四 MySQL的高可用实现
2021/07/02 MySQL
bat批处理之字符串操作的实现
2022/03/16 Python
游戏《东方异文石:爱亚利亚黎明》正式版发布
2022/04/03 其他游戏
JDK8中String的intern()方法实例详细解读
2022/09/23 Java/Android