Javascript 中键盘方向键控制光标在表单中切换之规则列表
来源:互联网 发布:全自动打电话软件下载 编辑:程序博客网 时间:2024/06/01 22:21
上一次用坐标定位的方法解决了列数不规则的问题,这一次呢 ,针对列数规则的列表写一个通用函数。
注意://上下切换(inp[i+2]:2是列数),这个注释在下面代码里有,根据自己列表的列数修改。
var inp = $(":text").not($("input[readonly]"));inp.each(function(i,obj){$(obj).keydown(function(event){event = event || window.event;var iekey = event.keyCode; //获取你键盘按下的的什么键(得到数字)//上下切换(inp[i+2]:2是列数)if(iekey == 40 && typeof(inp[i+2])!= 'undefined') {setTimeout(function(){inp[i+2].select();},10);}else if(iekey == 38 && typeof(inp[i-2])!= 'undefined'){setTimeout(function(){inp[i-2].select();},10);}//左右切换if (iekey == 37 || iekey == 39) {//获取当前光标在表单的位置 if (document.selection) {var sel = document.selection.createRange(); sel.setEndPoint("StartToStart", this.createTextRange()) var s = sel.text.length //获取光标在表单的位置 }else{ var s = this.selectionStart; //获取光标在表单的位置 }if (iekey == 39 && typeof(inp[i+1])!= 'undefined' && s == this.value.length) {setTimeout(function(){inp[i+1].select();},10);//setCaretPosition(inp[i+1],inp[i+1].value.length);}else if(iekey == 37 && typeof(inp[i-1])!= 'undefined' && s == 0){setTimeout(function(){inp[i-1].select();},10);//setCaretPosition(inp[i-1],0);}}});});//控制光标的初始化位置function setCaretPosition(obj, pos){ if(obj.setSelectionRange){ obj.setSelectionRange(pos,pos); }else if(obj.createTextRange) { var range = obj.createTextRange(); range.collapse(true); range.moveEnd('character', pos); range.moveStart('character', pos); range.select(); } }
阅读全文
0 0
- Javascript 中键盘方向键控制光标在表单中切换之规则列表
- Javascript 中键盘方向键控制光标在表单中切换之不规则列表
- 方向键控制光标在table中跳动
- 表单中按上下方向键自动移动光标的例子
- JavaScript中怎么样在表格控制光标的移动
- 用键盘控制光标在输入框中跳转的小巧门
- 用键盘控制光标在输入框中跳转的小巧门
- LayaAir 使用方向键 控制精灵在格子中移动
- 用键盘控制光标在输入框中跳转的小巧门 (轉自http://blog.csdn.net/dhlhh)
- 在Firefox中使用键盘(F7插入式浏览,可用键盘选中要复制的文字,通过tab切换光标的位置)
- QT项目之键盘控制光标移动
- GUI 剖析之 键盘方向键控制鼠标移动的实现
- 在FreeForm DW中用方向键控制上下左右切换列
- 使用方向键控制table中文本框焦点
- 键盘上的INS键---切换文档编写中光标的状态
- c++ 在console中控制光标的位置
- Flex 使用方向键控制光标位置
- vi中光标的控制
- 简要分析Android中的Intent,Bundle,Parcel中的数据传递
- Javascript 函数的几种写法
- 一个程序员应该知道的名词
- CentOS7安装Docker与使用篇
- jQuery对象和DOM对象
- Javascript 中键盘方向键控制光标在表单中切换之规则列表
- sql server 自增长id 允许插入显示值
- nohup 与 & 的区别及用法
- myeclipse中xml自动提示问题
- iOS对IPV6的支持
- Gate 7.2学习笔记(三)
- 利用SQL索引提高查询速度
- 西游记团队中,需要裁掉一个人,你会先裁掉谁?
- 序列化