美文网首页
Textarea在光标处插入文字

Textarea在光标处插入文字

作者: 张先森Mr_zhang | 来源:发表于2017-10-10 09:21 被阅读0次
    function insertText(obj,str) {
        if (document.selection) {
            var sel = document.selection.createRange();
            sel.text = str;
        } else if (typeof obj.selectionStart === 'number' && typeof obj.selectionEnd === 'number') {
            var startPos = obj.selectionStart,
                endPos = obj.selectionEnd,
                cursorPos = startPos,
                tmpStr = obj.value;
            obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length);
            cursorPos += str.length;
            obj.selectionStart = obj.selectionEnd = cursorPos;
        } else {
            obj.value += str;
        }
    }
    
    function moveEnd(obj){
        obj.focus();
        var len = obj.value.length;
        if (document.selection) {
            var sel = obj.createTextRange();
            sel.moveStart('character',len);
            sel.collapse();
            sel.select();
        } else if (typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') {
            obj.selectionStart = obj.selectionEnd = len;
        }
    } 
    

    使用:
    onclick="insertText(document.getElementById('text'),'新文字')"
    onclick="moveEnd(document.getElementById('text'))"

    相关文章

      网友评论

          本文标题:Textarea在光标处插入文字

          本文链接:https://www.haomeiwen.com/subject/hbamyxtx.html