JS在TextArea光标位置插入文字并实现移动光标到文字末尾


Posted in Javascript onJune 21, 2013

=IE支持document.selection
=Firefox,Chrome,Safari以及Opera都有selectionStart和selectionEnd属性

function insertText(obj,str) { 
if (document.selection) { 
var sel = document.selection.createRange(); 
sel.text = str; 
} else if (typeof obj.selectionStart === 'number' && typeof obj.selectionEnd === 'number') { 
var startPos = obj.selectionStart, 
endPos = obj.selectionEnd, 
cursorPos = startPos, 
tmpStr = obj.value; 
obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length); 
cursorPos += str.length; 
obj.selectionStart = obj.selectionEnd = cursorPos; 
} else { 
obj.value += str; 
} 
} 
function moveEnd(obj){ 
obj.focus(); 
var len = obj.value.length; 
if (document.selection) { 
var sel = obj.createTextRange(); 
sel.moveStart('character',len); 
sel.collapse(); 
sel.select(); 
} else if (typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') { 
obj.selectionStart = obj.selectionEnd = len; 
} 
}

<input type="button" onclick="insertText(document.getElementById('text'),' 新文字—YoyiorLee ')" value="插入文字"></input>

<input type="button" onclick="moveEnd(document.getElementById('text'))" value="移到末尾"></input>
Javascript 相关文章推荐
层序遍历在ExtJs的TreePanel中的应用
Oct 16 Javascript
初识javascript 文档碎片
Jul 13 Javascript
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
Jun 08 Javascript
js querySelector和getElementById通过id获取元素的区别
Apr 20 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
Jun 11 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
Mar 22 Javascript
遍历json 对象的属性并且动态添加属性的实现
Dec 02 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
Mar 08 Javascript
Vue实现active点击切换方法
Mar 16 Javascript
vue实现树形菜单效果
Mar 19 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
Oct 07 Javascript
layui自定义插件citySelect实现省市区三级联动选择
Jul 26 Javascript
JS获得URL超链接的参数值实例代码
Jun 21 #Javascript
随窗体滑动的小插件sticky源码
Jun 21 #Javascript
jquery中文乱码的多种解决方法
Jun 21 #Javascript
js单向链表的具体实现实例
Jun 21 #Javascript
javascript setTimeout和setInterval计时的区别详解
Jun 21 #Javascript
js简易namespace管理器 实例代码
Jun 21 #Javascript
JavaScript中的this关键字介绍与使用实例
Jun 21 #Javascript
You might like
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
PHP array_multisort() 函数的深入解析
2013/06/20 PHP
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
简单实用的全选反选按钮例子
2013/10/18 Javascript
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
2014/05/21 Javascript
JavaScript中发布/订阅模式的简单实例
2014/11/05 Javascript
JavaScript中的Truthy和Falsy介绍
2015/01/01 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
ajax接收后台数据在html页面显示
2017/02/19 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
vue使用原生js实现滚动页面跟踪导航高亮的示例代码
2018/10/25 Javascript
详解Puppeteer前端自动化测试实践
2019/02/21 Javascript
解决layui数据表格table的横向滚动条显示问题
2019/09/04 Javascript
pymongo实现多结果进行多列排序的方法
2015/05/16 Python
Python脚本实现自动发带图的微博
2016/04/27 Python
Python设计模式之代理模式简单示例
2018/01/09 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
Python WSGI的深入理解
2018/08/01 Python
详解python tkinter教程-事件绑定
2019/03/28 Python
Python 实现数据结构-循环队列的操作方法
2019/07/17 Python
python 的 scapy库,实现网卡收发包的例子
2019/07/23 Python
python英语单词测试小程序代码实例
2019/09/09 Python
python中p-value的实现方式
2019/12/16 Python
Tensorflow加载Vgg预训练模型操作
2020/05/26 Python
HTML5 表单验证失败的提示语问题
2017/07/13 HTML / CSS
爱尔兰电脑、家电和家具购物网站:Buy It Direct
2019/07/09 全球购物
添柏岚英国官方网站:Timberland英国
2019/11/28 全球购物
Net Remoting把服务器端激活两种模式
2014/01/22 面试题
实习自荐信
2013/10/13 职场文书
运动会领导邀请函
2014/02/05 职场文书
今冬明春火灾防控工作方案
2014/05/29 职场文书
十佳少先队员演讲稿
2014/09/12 职场文书
观看《周恩来的四个昼夜》思想汇报
2014/09/12 职场文书
幼儿园母亲节活动总结
2015/02/10 职场文书
2016自主招生教师推荐信范文
2015/03/23 职场文书
工伤调解协议书
2016/03/21 职场文书