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 相关文章推荐
toString()一个会自动调用的方法
Feb 08 Javascript
Java中Timer的用法详解
Oct 21 Javascript
JavaScript事件处理的方式(三种)
Apr 26 Javascript
jquery if条件语句的写法
May 19 Javascript
JavaScript——DOM操作——Window.document对象详解
Jul 14 Javascript
AngularJS控制器详解及示例代码
Aug 16 Javascript
VUE 更好的 ajax 上传处理 axios.js实现代码
May 10 Javascript
JavaScript的六种继承方式(推荐)
Jun 26 Javascript
mui 打开新窗口的方式总结及注意事项
Aug 20 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
Oct 20 Javascript
深入剖析JavaScript instanceof 运算符
Jun 14 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 Vue.js
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
PHP编程中的常见漏洞和代码实例
2014/08/06 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
JavaScript小技巧 2.5 则
2010/09/12 Javascript
jquery中ajax学习笔记4
2011/10/16 Javascript
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
深入理解javascript作用域和闭包
2014/09/23 Javascript
iframe里面的元素触发父窗口元素事件的jquery代码
2014/10/19 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
2014/11/24 Javascript
jQuery中:contains选择器用法实例
2014/12/30 Javascript
JavaScript 学习笔记之操作符(续)
2015/01/14 Javascript
函数window.open实现关闭所有的子窗口
2015/08/03 Javascript
jQuery绑定事件-多种实现方式总结
2016/05/09 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
AngularJS入门教程之更多模板详解
2016/08/19 Javascript
webpack+vue.js实现组件化详解
2016/10/12 Javascript
Bootstrap中定制LESS-颜色及导航条(推荐)
2016/11/21 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
2017/05/07 Javascript
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
Vue实现简单计算器案例
2020/02/25 Javascript
vue axios请求成功却进入catch的原因分析
2020/09/08 Javascript
原生JS实现音乐播放器的示例代码
2021/02/25 Javascript
[01:05:52]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第一场 2月2日
2021/03/11 DOTA
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python断言assert的用法代码解析
2018/02/03 Python
和孩子一起学习python之变量命名规则
2018/05/27 Python
Django-Model数据库操作(增删改查、连表结构)详解
2019/07/17 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
使用Pycharm(Python工具)新建项目及创建Python文件的教程
2020/04/26 Python
什么时候用assert
2015/05/08 面试题
《彩色世界》教学反思
2014/04/12 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
孝敬父母的活动方案
2014/08/31 职场文书
离职报告格式
2014/11/04 职场文书
Python爬虫之用Xpath获取关键标签实现自动评论盖楼抽奖(二)
2021/06/07 Python