function inputkeyup(obj,event,value){
if(event.keyCode!=37&&event.keyCode!=39&&event.keyCode!=46&&event.keyCode!=8){
newvalue=value.replace(/[<>]/g,'');
//如果输入错误,退格并且定位光标位置
if(value!=newvalue){
if(document.selection){
if(obj.type == 'textarea'){
var slen = 0;
var nlen = value.length-newvalue.length;
var sTextRange=document.selection.createRange();
var oTextRange = document.body.createTextRange();
oTextRange.moveToElementText(obj);
for (start=0; oTextRange.compareEndPoints("StartToStart", sTextRange) < 0; slen++){
oTextRange.moveStart('character', 1);
}
obj.value=newvalue;
var a =obj.createTextRange();
a.moveStart('character',slen-nlen);
a.collapse(true);
a.select();
}else{
var s=document.selection.createRange();
s.setEndPoint("StartToStart",obj.createTextRange());
var slen = s.text.length;
var nlen = value.length-newvalue.length;
obj.value=newvalue;
var a =obj.createTextRange();
a.moveStart('character',slen-nlen);
a.collapse(true);
a.select();
}
}else{
var slen = obj.selectionStart;
var nlen = value.length-newvalue.length;
obj.value=newvalue;
obj.selectionStart=slen-nlen;
obj.selectionEnd=slen-nlen;
}
}
}
}
分享到:
相关推荐
在JavaScript编程中,获取和设置光标位置是常见的需求,特别是在与用户交互的表单元素如`<input>`和`<textarea>`中。这涉及到DOM(文档对象模型)操作和事件处理,对于创建动态和响应式的网页应用至关重要。本文将...
在前端开发中,经常需要处理用户在文本框(如`<input type="text">`或`<textarea>`)内的输入行为,例如实现自动填充、实时校验等功能时,获取光标的位置就显得尤为重要。本文将详细介绍如何使用JavaScript来实现这...
vue通过当前的光标来进行插值,从而需要去获取光标所在的位置然后进行对光标前后的字符串进行截取处理,从而达到对新字符的插入
### 在Textarea光标处插入...本文详细介绍了如何在`textarea`的光标位置插入文本的方法,包括IE和非IE浏览器的兼容性处理。通过分析提供的代码示例,我们不仅了解了其实现原理,还学习了如何在实际项目中应用这些知识。
标题“Textarea在光标停留处插入文字”涉及到的是如何在`Textarea`中实现文字的动态插入,使得新添加的文字能精确地出现在用户当前光标所在的位置。这通常涉及到JavaScript的DOM操作和事件监听。 在HTML中,`...
textarea光标定位在最后,就是往textarea中赋值时候,光标自动移到最后。
ICSharpCode.TextEditor_2.2是一个开源的文本编辑器组件,主要由C#语言编写,专为.NET Framework设计。这个编辑器具有多种高级功能,是开发者在构建自定义应用程序时,尤其是涉及到代码编辑和查看时的一个理想选择。...
jQuery扩展函数,用于获取设置textarea中光标位置
本文将介绍如何在IE、Firefox和Chrome中获取div编辑框、textarea和input text光标位置的方法,并提供相应的代码示例。 首先,了解不同浏览器对于光标位置获取的支持情况是必要的。例如,IE浏览器使用了document....
jQuery textArea文本光标全功能插件,可以获取光标位置,向光标文字插入文本,高亮显示指定的文本块
有时,开发者需要获取或操作文本框中的焦点光标位置、选中起始位置、终止位置以及选中的内容,这对于实现诸如高亮显示、文本编辑、格式化等功能至关重要。在本文中,我们将深入探讨这些概念,并提供兼容IE8的解决...
var Input = require ( 'react-input-textarea' ) . Input ; var TextArea = require ( 'react-input-textarea' ) . TextArea ; var MyComponent = React . createClass ( { render : function ( ) { return ( ...
在IT领域,特别是前端开发中,使用JavaScript在`textarea`元素的光标位置插入内容是一项常见且实用的技术。本文将详细解析如何实现这一功能,并深入理解其背后的逻辑与原理。 ### 核心知识点:在`textarea`光标处...
在本文中,我们将探讨如何在 textarea 元素中实现光标定位,同时确保兼容 Internet Explorer(IE)和 Firefox(FF)这两种主要的浏览器。 在 textarea 中设置光标位置是一个常见的需求,特别是在用户交互场景中,如...
在处理`<textarea>`光标位置插入文字并移动光标到文字末尾的操作时,主要涉及两个关键属性:`selectionStart`和`selectionEnd`,以及在IE中使用的`document.selection`对象。 `selectionStart`和`selectionEnd`是...
ICSharpCode.TextEditor 控件源自开源项目 SharpDevelop,是一款非常不错的.NET代码编辑控件,内置了多种高亮语言支持,对中文支持友好。 本示例为了方便使用,在其控件上增加语言属性,可以直接在属性栏设置语言...
本文主要介绍如何使用jQuery在textarea元素中光标所在位置插入文本的技术,涉及到的操作和概念包括jQuery库的使用、文本框(textarea)的光标定位与操作、JavaScript中的字符串操作等。文章首先定义了jQuery的扩展...
在网页开发中,与用户交互的表单元素如textarea常常需要细致的控制,例如获取或设置光标位置,这在实现某些特定功能时是必不可少的。jQuery作为一款广泛使用的JavaScript库,提供了丰富的API来简化这一过程。今天...
setSelectionRange方法用于设定<input> 或 <textarea> 元素中当前选中文本的起始和结束位置。 当opsStart和opsEnd相同时,可用于定位光标位置。 setSelectionRange实际上是改变了selectionStart 和 selectionEnd...
### flex解决textarea,input不能输入中文的方法 在使用Flex进行Web应用开发时,有时会遇到一个让人头疼的问题:在非主应用程序环境下(例如嵌入到HTML页面中的SWF文件),textarea和input控件无法正常输入中文字符...