扩展 JQuery 在光标所在位置插入字符

/**扩展 JQuery  在光标所在位置插入指定字符
 * */
        (function($){
            $.fn.extend({
                insertAtCaret: function(myValue){
                    var $t=$(this)[0];
                    if (document.selection) {
                        this.focus();
                        sel = document.selection.createRange();
                        sel.text = myValue;
                        this.focus();
                    }
                    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;
                    }
                    else {
                        this.value += myValue;
                        this.focus();
                    }
                }
            })

        })(jQuery)

调用  $("#qst").insertAtCaret("字符串")

 

posted on 2021-12-16 09:25  码农at突泉  阅读(104)  评论(0)    收藏  举报