码迷,mamicode.com
首页 > Web开发 > 详细

JQuery在光标位置插入内容

时间:2014-06-28 23:16:21      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   os   art   cti   

 1 (function($) {
 2     $.fn.extend({
 3         insertAtCaret: function(myValue) {
 4             var $t = $(this)[0];
 5               //IE
 6             if (document.selection) {
 7                 this.focus();
 8                 sel = document.selection.createRange();
 9                 sel.text = myValue;
10                 this.focus();
11             } else
12             //!IE
13             if ($t.selectionStart || $t.selectionStart == "0") {
14                 var startPos = $t.selectionStart;
15                 var endPos = $t.selectionEnd;
16                 var scrollTop = $t.scrollTop;
17                 $t.value = $t.value.substring(0, startPos) + myValue + $t.value.substring(endPos, $t.value.length);
18                 this.focus();
19                 $t.selectionStart = startPos + myValue.length;
20                 $t.selectionEnd = startPos + myValue.length;
21                 $t.scrollTop = scrollTop;
22             } else {
23                 this.value += myValue;
24                 this.focus();
25             }
26         }
27     })
28 })(jQuery);

 

IE下可以通过document.selection.createRange();来实现,而Firefox(火狐)浏览器则需要首先获取光标位置,然后对value进行字符串截取处理。
$(selector).insertAtCaret("value");  

 

JQuery在光标位置插入内容,布布扣,bubuko.com

JQuery在光标位置插入内容

标签:style   blog   color   os   art   cti   

原文地址:http://www.cnblogs.com/showersun/p/3794283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!