js获得光标位置和键的ASCLL
来源:互联网 发布:奇峰软件 编辑:程序博客网 时间:2024/05/19 04:26
input输入框中,不允许输入某些特殊字符,当输入特殊字符时替换成空。
问题:绑定keyup事件,为了用户输入方便,当用户点击方向键时进行修改,也会触发keyup事件,这时光标会跳到最后一位。。。。
解决方案一:可以用keycode键的ASCll排除掉,但是点击键盘的其他键光标还是会跳到最后一位。
解决方案二:先获得光标的位置信息,然后进行数据处理操作,最后定位到原来光标的位置。
代码如下:
//绑定keyup事件,调用replaceStr()函数function replaceStr(){//获得光标位置var ctrl= document.getElementById('preInfo');var CaretPos = 0; // IE Support if(!+"\v1"){if (document.selection){ctrl.focus ();var Sel = document.selection.createRange ();Sel.moveStart ('character', -ctrl.value.length);CaretPos = Sel.text.length;}}// Firefox support else if (ctrl.selectionStart || ctrl.selectionStart == '0') {CaretPos = ctrl.selectionStart;//IE中有event,火狐中arguments.callee.caller.arguments[0] || window.eventevent=arguments.callee.caller.arguments[0] || window.event;}//alert(CaretPos);//打印光标位置//alert(event.keyCode)//打印键的ASCLLif((event.keyCode == 188)||(event.keyCode == 190)||(event.keyCode == 16)||(event.keyCode ==222)){//当键盘输入""&<>特殊符号时,执行替换为空串。var replaceStr=document.getElementById('preInfo').value;replaceStr=replaceStr.replace(/[\"\&\=\:\<\>]+/g,"");document.getElementById('preInfo').value=replaceStr;}//设置光标位置//if(!+"\v1"){if(ctrl.setSelectionRange){ctrl.focus();ctrl.setSelectionRange(CaretPos,CaretPos);console.log(CaretPos);} else if (ctrl.createTextRange) {var range = ctrl.createTextRange();range.collapse(true);range.moveEnd('character', CaretPos);range.moveStart('character', CaretPos);range.select();}//}}
0 0
- js获得光标位置和键的ASCLL
- 获得textView的光标位置
- JS获取和设置光标的位置
- js获得textarea中的光标位置!
- js 计算光标的位置
- 获得Memo、RichEdit的光标位置
- 获得Memo、RichEdit的光标位置
- js获取光标位置和设置文本框光标位置
- 获得/设置光标位置
- js获取和设置文本框光标的位置
- js获取和设置文本框光标的位置
- js 将光标移动到textarea的最后和光标位置插入内容
- js对光标位置的控制
- js获得屏幕的位置
- javascript 获得当前光标位置
- js 光标位置控制
- js获取光标位置
- js控制光标位置
- 大旗光电顺利完成石家庄诚志永华LED节能照明(LED日光管)改造
- freemarker String 转 数字
- 程序员表白程序,开放源码,不断更新(第二篇)
- eclipse cpp环境搭建
- 【iOS开发】关于如何适配32位和64位系统
- js获得光标位置和键的ASCLL
- Dev GridControl 自定义行颜色
- CircularProgressView
- MySQL中的隔离级别
- Eclipse调字体
- 程序员表白程序,开放源码,不断更新(第三篇:第二弹)
- Codeforces544B:Sea and Islands
- poj 1157 LITTLE SHOP OF FLOWERS
- iOS开发 - iOS发布条款检查表