奥展项目笔记10--js实现上下键控制光标移动
html代码:
<div class="col-md-2 title">企业名称:</div> <div class="col-md-4 data"> <input type="text" class="form-control" placeholder="请输入企业名称" value="" v-model="form.company" onkeydown="moveCursor(this,event)"> </div> <div class="col-md-2 title">到货时间:</div> <div class="col-md-4 data"> <input type="text" class="form-control" placeholder="请输入到货时间" value="" v-model="form.arrivetime" onkeydown=" moveCursor(this,event)"> </div> <div class="col-md-2 title">炉号 Heat No:</div> <div class="col-md-4 data"> <input type="text" class="form-control" placeholder="请输入炉号" value="" v-model="form.heatno" onkeydown="moveCursor(this,event)"> </div> <div class="col-md-2 title">交货状态:</div> <div class="col-md-4 data"> <input type="text" class="form-control" placeholder="请输入交货状态" value="" v-model="form.deliver" onkeydown="moveCursor(this,event)"> </div>
js代码:
//jQuery实现在一个输入框按下键后光标跳到下一个输入框 function focusNextInput(thisInput) { let inputs = document.getElementById("inspect-part1").getElementsByTagName("input"); for(var i = 0;i<inputs.length;i++){ // 如果是最后一个,则焦点回到第一个(如果想实现按顺序可以登陆,可以写入登陆方法) if(i==(inputs.length-1)){ inputs[0].focus(); break; }else if(thisInput == inputs[i]){ inputs[i+2].focus(); break; } } } //jQuery实现在一个输入框按上键后光标跳到上一个输入框 function focusLastInput(thisInput) { let inputs = document.getElementById("inspect-part1").getElementsByTagName("input"); for(var i = 0;i<inputs.length;i++){ // 如果是最后一个,则焦点回到第一个(如果想实现按顺序可以登陆,可以写入登陆方法) if(thisInput==inputs[0]){ inputs[inputs.length-1].focus(); break; }else if(thisInput == inputs[i]){ inputs[i-2].focus(); break; } } } function moveCursor(thisInput,event){ var e = event || window.event || arguments.callee.caller.arguments[0]; if(e && e.keyCode==38){//上 console.log("hello"); focusLastInput(thisInput); } if(e && e.keyCode==40){//下 focusNextInput(thisInput); } }
效果图:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)