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 相关文章推荐
云网广告中的代码,提示出错,大家找找
Nov 21 Javascript
jQuery 扩展对input的一些操作方法
Oct 30 Javascript
一个支持任意尺寸的图片上下左右滑动效果
Aug 24 Javascript
js判断一个字符串是否包含一个子串的方法
Jan 26 Javascript
jQuery选择器源码解读(五):tokenize的解析过程
Mar 31 Javascript
js中对函数设置默认参数值的3种方法
Oct 23 Javascript
自学实现angularjs依赖注入
Dec 20 Javascript
JS表单验证方法实例小结【电话、身份证号、Email、中文、特殊字符、身份证号等】
Feb 14 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
vue.js的vue-cli脚手架中使用百度地图API的实例
Jan 21 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
May 14 jQuery
Node.js 在本地生成日志文件的方法
Feb 07 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
中国第一家无线电行
2021/03/01 无线电
php中AES加密解密的例子小结
2014/02/18 PHP
php魔术变量用法实例详解
2014/11/13 PHP
深入探究PHP的多进程编程方法
2015/08/18 PHP
php实现的http请求封装示例
2016/11/08 PHP
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
prototype Element学习笔记(篇一)
2008/10/26 Javascript
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
最精简的JavaScript实现鼠标拖动效果的方法
2015/05/11 Javascript
js获取微信版本号的方法
2015/05/12 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
如何提高javascript加载速度
2016/12/26 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
Vue Socket.io源码解读
2018/02/07 Javascript
swiper 自动图片无限轮播实现代码
2018/05/21 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
[01:20]2018DOTA2亚洲邀请赛总决赛战队LGD晋级之路
2018/04/07 DOTA
python实现统计代码行数的方法
2015/05/22 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
python将文本分每两行一组并保存到文件
2018/03/19 Python
利用python将json数据转换为csv格式的方法
2018/03/22 Python
python实现京东秒杀功能
2018/07/30 Python
python f-string式格式化听语音流程讲解
2019/06/18 Python
flask 使用 flask_apscheduler 做定时循环任务的实现
2019/12/10 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
python中如何打包用户自定义模块
2020/09/23 Python
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
白色公司:The White Company
2017/10/11 全球购物
法律专业应届生自荐信范文
2014/01/06 职场文书
2014年社区庆元旦活动方案
2014/03/08 职场文书
《一个小村庄的故事》教学反思
2014/04/13 职场文书
中国梦演讲稿开场白
2014/08/28 职场文书
防灾减灾标语
2014/10/07 职场文书
2016年国庆节假期旅游工作总结
2016/04/01 职场文书