javascript获取textarea中所选文本的开始位置、结束位置和选择的文本

it2024-12-11  48

javascript获取textarea中所选文本的开始位置、结束位置和选择的文本。 demo:

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>javascript获取textarea中所选文本的开始位置、结束位置和选择的文本</title> </head> <body> <textarea name="" id="test" cols="30" rows="10"></textarea> <script type="text/javascript"> //获取所选文本的开始和结束位置 function getPositions() {     var el = document.getElementById("test"),         x = 0,         y = 0,         val = el.value;     //IE     if (document.selection) {         //创建范围对象         var range = document.selection.createRange();         //克隆对象         var drange = range.duplicate();         //复制范围         drange.moveToElementText(el);         drange.setEndPoint("EndToEnd", range);         x = drange.text.length - range.text.length;         y = x + range.text.length;     }     //Firefox,Chrome,Safari,opera etc     else if (window.getSelection) {         x = el.selectionStart;         y = el.selectionEnd;     }     return {         "val": val,         "x": x,         "y": y     }; } //获取textarea中选择的文本 document.onmouseup = function() {     if (window.getSelection) {         //Firefox,Chrome,Safari,opera etc         console.log(getPositions().val.substring(getPositions().x, getPositions().y));     } else if (document.selection) {         //IE,IE下可以直接获取,不必利用开始和结束位置截取         console.log(document.selection.createRange().text);     } }; </script> </body> </html>

转载于:https://www.cnblogs.com/xudeming208/p/4043657.html

相关资源:数据结构—成绩单生成器
最新回复(0)