将文本插入到光标所在位置的textarea中(JavaScript)

我想创建一个简单的函数,将文本添加到用户光标位置的文本区域。它必须是一个干净的功能。只是基础。我可以找出其余的。



largeQ
浏览 649回答 3
3回答

侃侃尔雅

function insertAtCursor(myField, myValue) {    //IE support    if (document.selection) {        myField.focus();        sel = document.selection.createRange();        sel.text = myValue;    }    //MOZILLA and others    else if (myField.selectionStart || myField.selectionStart == '0') {        var startPos = myField.selectionStart;        var endPos = myField.selectionEnd;        myField.value = myField.value.substring(0, startPos)            + myValue            + myField.value.substring(endPos, myField.value.length);    } else {        myField.value += myValue;    }}

www说

为了适当的JavascriptHTMLTextAreaElement.prototype.insertAtCaret = function (text) {  text = text || '';  if (document.selection) {    // IE    this.focus();    var sel = document.selection.createRange();    sel.text = text;  } else if (this.selectionStart || this.selectionStart === 0) {    // Others    var startPos = this.selectionStart;    var endPos = this.selectionEnd;    this.value = this.value.substring(0, startPos) +      text +      this.value.substring(endPos, this.value.length);    this.selectionStart = startPos + text.length;    this.selectionEnd = startPos + text.length;  } else {    this.value += text;  }};
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript