JS在文本域光标位置插入文本
其他
2019-05-10 16:19:35
阅读次数: 0
- 插入前:
插入后:
-
-
- function insertAtCursor(myField, myValue) {
-
- //IE 浏览器
- if (document.selection) {
- myField.focus();
- sel = document.selection.createRange();
- sel.text = myValue;
- sel.select();
- }
-
- //FireFox、Chrome等
- else if (myField.selectionStart || myField.selectionStart == '0') {
- var startPos = myField.selectionStart;
- var endPos = myField.selectionEnd;
-
- // 保存滚动条
- var restoreTop = myField.scrollTop;
- myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
-
- if (restoreTop > 0) {
- myField.scrollTop = restoreTop;
- }
-
- myField.focus();
- myField.selectionStart = startPos + myValue.length;
- myField.selectionEnd = startPos + myValue.length;
- } else {
- myField.value += myValue;
- myField.focus();
- }
- }
相应的HTML: [html] view plain copy
- <textarea id="textarea" style="width: 386px; height: 260px">
- </textarea>
- <input type="text" id="text" />
- <input type="button" value="插入" onclick="insertAtCursor(document.getElementById('textarea'),document.getElementById('text').value)" />
原文是菜鸟JS上的,找了很久,很实用的一个小功能 |
来自: 风之殇z5ogyvwv > 《程序》
转载自blog.csdn.net/u014516261/article/details/90071892