基于jQuery的输入框在光标位置插入内容, 并选中


Posted in Javascript onOctober 29, 2011
// 
//使用方法 
//$(文本域选择器).insertContent("插入的内容"); 
//$(文本域选择器).insertContent("插入的内容",数值); //根据数值选中插入文本内容两边的边界, 数值: 0是表示插入文字全部选择,-1表示插入文字两边各少选中一个字符。 
// 
//在光标位置插入内容, 并选中 
(function($) { 
$.fn.extend({ 
insertContent: function(myValue, t) { 
var $t = $(this)[0]; 
if (document.selection) { //ie 
this.focus(); 
var sel = document.selection.createRange(); 
sel.text = myValue; 
this.focus(); 
sel.moveStart('character', -l); 
var wee = sel.text.length; 
if (arguments.length == 2) { 
var l = $t.value.length; 
sel.moveEnd("character", wee + t); 
t <= 0 ? sel.moveStart("character", wee - 2 * t - myValue.length) : sel.moveStart("character", wee - t - myValue.length); 
sel.select(); 
} 
} 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; 
if (arguments.length == 2) { 
$t.setSelectionRange(startPos - t, $t.selectionEnd + t); 
this.focus(); 
} 
} 
else { 
this.value += myValue; 
this.focus(); 
} 
} 
}) 
})(jQuery);
Javascript 相关文章推荐
js网页侧边随页面滚动广告效果实现
Apr 14 Javascript
用js实现判断当前网址的来路如果不是指定的来路就跳转到指定页面
May 02 Javascript
jQuery选择器全集详解
Nov 24 Javascript
JavaScript动态改变表格单元格内容的方法
Mar 30 Javascript
jquery判断密码强度的验证代码
Apr 22 Javascript
JS简单去除数组中重复项的方法
Sep 13 Javascript
jQuery展示表格点击变色、全选、删除
Jan 05 Javascript
使用contextMenu插件实现Bootstrap table弹出右键菜单
Feb 20 Javascript
angularjs+bootstrap实现自定义分页的实例代码
Jun 19 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
Sep 27 Javascript
vue prop属性传值与传引用示例
Nov 13 Javascript
如何编写一个 Webpack Loader的实现
Oct 18 Javascript
基于jquery的无限级联下拉框js插件
Oct 29 #Javascript
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
Oct 29 #Javascript
仿猪八戒网左下角的文字滚动效果
Oct 28 #Javascript
js实现双向链表互联网机顶盒实战应用实现
Oct 28 #Javascript
js常用代码段收集
Oct 28 #Javascript
jWiard 基于JQuery的强大的向导控件介绍
Oct 28 #Javascript
理解JSON:3分钟课程
Oct 28 #Javascript
You might like
PHP字符转义相关函数小结(php下的转义字符串)
2007/04/12 PHP
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
php析构函数的简单使用说明
2015/08/24 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
爱恋千雪-US-AscII加密解密工具(网页加密)下载
2007/06/06 Javascript
JavaScript数组去重的3种方法和代码实例
2015/07/01 Javascript
基于jQuery实现动态数字展示效果
2015/08/12 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
jquery自动补齐功能插件flexselect用法示例
2016/08/06 Javascript
Vue中定义全局变量与常量的各种方式详解
2017/08/23 Javascript
vue3.0 CLI - 3.2 路由的初级使用教程
2018/09/20 Javascript
Vue.js 图标选择组件实践详解
2018/12/03 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
[00:47]DOTA2荣耀之路6:天火,天火!
2018/05/30 DOTA
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
python实现的AES双向对称加密解密与用法分析
2017/05/02 Python
Python自然语言处理之词干,词形与最大匹配算法代码详解
2017/11/16 Python
Python使用requests发送POST请求实例代码
2018/01/25 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
2018/03/19 Python
Python中的Django基本命令实例详解
2018/07/15 Python
Python中fnmatch模块的使用详情
2018/11/30 Python
python利用opencv保存、播放视频
2020/11/02 Python
详解Python中string模块除去Str还剩下什么
2020/11/30 Python
Mio Skincare美国官网:身体紧致及孕期身体护理
2017/03/05 全球购物
英国最大线上综合鞋类商城:Office
2017/12/08 全球购物
澳大利亚音乐商店:Bava’s Music City
2019/05/05 全球购物
Nobody Denim官网:购买高级女士牛仔裤
2021/03/15 全球购物
如何打开WebSphere远程debug
2014/10/10 面试题
中海讯通笔试题
2015/09/15 面试题
最新党员的自我评价分享
2013/11/04 职场文书
护士演讲稿范文
2014/01/05 职场文书
人资专员岗位职责
2014/04/04 职场文书
教师党员整改措施
2014/10/24 职场文书
西游降魔篇观后感
2015/06/15 职场文书
使用python绘制分组对比柱状图
2022/04/21 Python