手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >jQuery 在光标定位的地方插入文字的插件
jQuery 在光标定位的地方插入文字的插件
摘要:核心代码:复制代码代码如下:(function($){$.fn.extend({"insert":function(value){//默认参...

核心代码:

复制代码 代码如下:

(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 在光标定位的地方插入文字的插件】相关文章:

javascript实现树形菜单的方法

JQuery自动触发事件的方法

JQuery给网页更换皮肤的方法

jQuery实现强制cookie过期方法汇总

jQuery实现不断闪烁文字的方法

jQuery实现表格行上移下移和置顶的方法

jQuery仿gmail实现fixed布局的方法

jQuery异步上传文件插件ajaxFileUpload详细介绍

光标定位等TextRange的操作的范例代码

jquery使用经验小结

精品推荐
分类导航