JQuery在光标位置插入内容的实现代码


Posted in Javascript onJune 18, 2010
(function($){ 
$.fn.extend({ 
insertAtCaret: function(myValue){ 
var $t=$(this)[0]; 
if (document.selection) { 
this.focus(); 
sel = document.selection.createRange(); 
sel.text = myValue; 
this.focus(); 
} 
else 
if ($t.selectionStart || $t.selectionStart == '0') { 
var startPos = $t.selectionStart; 
var endPos = $t.selectionEnd; 
var scrollTop = $t.scrollTop; 
$t.value = $t.value.substring(0, startPos) + myValue + $t.value.substring(endPos, $t.value.length); 
this.focus(); 
$t.selectionStart = startPos + myValue.length; 
$t.selectionEnd = startPos + myValue.length; 
$t.scrollTop = scrollTop; 
} 
else { 
this.value += myValue; 
this.focus(); 
} 
} 
}) 
})(jQuery);

使用方法:
$(selector).insertAtCaret("value");
Javascript 相关文章推荐
JS提交并解析后台返回的XML的代码
Nov 03 Javascript
js 优化次数过多的循环 考虑到性能问题
Mar 05 Javascript
js获取html文件的思路及示例
Sep 17 Javascript
直接在JS里创建JSON数据然后遍历使用
Jul 25 Javascript
node.js+express制作网页计算器
Jan 17 Javascript
AngularJS实现动态编译添加到dom中的方法
Nov 04 Javascript
JS实现淡入淡出图片效果的方法分析
Dec 20 Javascript
Bootstrap Table使用整理(一)
Jun 09 Javascript
JS实现的找零张数最小问题示例
Nov 28 Javascript
js中int和string数据类型互相转化实例
Jan 16 Javascript
jQuery表单元素过滤选择器用法实例分析
Feb 20 jQuery
如何搭建一个完整的Vue3.0+ts的项目步骤
Oct 18 Javascript
JavaScript Chart 插件整理
Jun 18 #Javascript
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
Jun 18 #Javascript
Javascript下IE与Firefox下的差异兼容写法总结
Jun 18 #Javascript
js打印纸函数代码(递归)
Jun 18 #Javascript
jquery 弹出层注册页面等(asp.net后台)
Jun 17 #Javascript
jquery 多行滚动代码(附详细解释)
Jun 17 #Javascript
关于juqery radio写法的兼容性问题(新老版本jquery)
Jun 14 #Javascript
You might like
2019年中国咖啡业现状与发展趋势
2021/03/04 咖啡文化
在同一窗体中使用PHP来处理多个提交任务
2006/10/09 PHP
一个简洁实用的PHP缓存类完整实例
2014/07/26 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
贴一个在Mozilla中常用的Javascript代码
2007/01/09 Javascript
javascript 对象的定义方法
2007/01/10 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
javascript创建函数的20种方式汇总
2015/06/23 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
2020/09/13 Javascript
全面解析JavaScript中apply和call以及bind(推荐)
2016/06/15 Javascript
javascript 分号总结及详细介绍
2016/09/24 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
jQuery动画_动力节点节点Java学院整理
2017/07/04 jQuery
vue.js整合vux中的上拉加载下拉刷新实例教程
2018/01/09 Javascript
详解基于vue-cli配置移动端自适应
2018/01/13 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
详解webpack 最简打包结果分析
2019/02/20 Javascript
Promise扫盲贴
2019/06/24 Javascript
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
JS内置对象和Math对象知识点详解
2020/04/03 Javascript
ant design vue datepicker日期选择器中文化操作
2020/10/28 Javascript
Python使用functools实现注解同步方法
2018/02/06 Python
Python中装饰器学习总结
2018/02/10 Python
Opencv+Python实现图像运动模糊和高斯模糊的示例
2019/04/11 Python
松下电器美国官方商店:Panasonic美国
2016/10/14 全球购物
去加拿大的旅行和假期:Canadian Affair
2016/10/25 全球购物
NEW LOOK官网:英国时装零售巨头之一,快时尚品牌
2017/01/11 全球购物
加拿大折扣、优惠券和交易网站:WagJag
2018/02/07 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
物理学专业自荐信
2014/06/11 职场文书
质量保证书格式模板
2015/02/27 职场文书
2015年度公共机构节能工作总结
2015/05/26 职场文书
2015年防灾减灾工作总结
2015/07/24 职场文书
MySQL事务的隔离级别详情
2022/07/15 MySQL
python 使用pandas读取csv文件的方法
2022/12/24 Python