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


复制代码 代码如下:

//
//使用方法
//$(文本域选择器).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);



相关阅读:
网页制作实例:em实现倒三角的提示效果
Win7安装完成后对系统的优化设置
万能Asp防注入代码 拒绝攻击
Linux Kernel 64位ABI系统漏洞 目前无药可解
ASP常用的函数
Windows 7游戏兼容性测试表现很不错
Javascript风格要素 Ⅱ
原创]来自ImageSee官方 JavaScript图片浏览器" target="_blank">[原创]来自ImageSee官方 JavaScript图片浏览器
ajax应该如何应用?
CSS中如何正确的使用id和class
优化SQL Server数据逻辑 提高查询性能
JavaScript入门教程(4):浏览器对象
照片各部分的彩色与黑白交替更换
MySQL show命令的用法
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4