核心代码: 复制代码 代码如下: (function($){ $.fn.extend({ "insert":function(value){ //默认参数 value=$.extend({ "text":"123" },value); var dthis = $(this)[0]; //将jQuery对象转换为DOM元素 //IE下 if(document.selection){ $(dthis).focus(); //输入元素textara获取焦点 var fus = document.selection.createRange();//获取光标位置 fus.text = value.text; //在光标位置插入值 $(dthis).focus(); ///输入元素textara获取焦点 } //火狐下标准 else if(dthis.selectionStart || dthis.selectionStart == '0'){ var start = dthis.selectionStart; //获取焦点前坐标 var end =dthis.selectionEnd; //获取焦点后坐标 //以下这句,应该是在焦点之前,和焦点之后的位置,中间插入我们传入的值 .然后把这个得到的新值,赋给文本框 dthis.value = dthis.value.substring(0, start) + value.text + dthis.value.substring(end, dthis.value.length); } //在输入元素textara没有定位光标的情况 else{ this.value += value.text; this.focus(); }; return $(this); } }) })(jQuery) 主要思路: 当点击某个元素的时候,让一个输入框,插入指定的值。? 1.当点击某个元素的时候,应该让输入框获取焦点,因为只有获得了焦点,才能在里面输入值; IE下:document.selection.createRange() FF下:var start = dthis.selectionStart; //获取焦点前坐标 var end =dthis.selectionEnd; //获取焦点后坐标 2.获取当前输入框焦点的位置 3.将值插入到输入框焦点的位置; 4.再次获取焦点;保证光标在输入框内 在线演示: http://demo.jb51.net/js/2012/myfocustext/打包下载: http://www.jb51.net/jiaoben/44153.html
推荐阅读
jQuery下通过replace字符串替换实现大小图片切换
核心就是使用replace替换img src的图片路径,从而实现不同尺寸图片的切换。 下面这个动画就是显示了尺寸切换,单击“大图”按钮,则改变图片的src,加载大图,单击“小图”按钮,则又显示小图。 replace用法简单讲>>>详细阅读
本文标题:jQuery 在光标定位的地方插入文字的插件
地址:http://www.17bianji.com/kaifa2/JS/23414.html
1/2 1