前言
最近项目中有个需求就是选中某一字符串在前后加上任意字符
1.标签 ,加上id 方便获取文本内容
<el-input id="textarea" type="textarea" v-model="form.description" :autosize="{ minRows: 4, maxRows: 6}" placeholder="请输入规则描述" @mouseup.native="handleGetText"></el-input>
2.写具体的实现方法
handleGetText(e){
// 获取鼠标选中文字
this.position = {};
const txt = document.getSelection().toString();
let rangeDivDom = document.querySelector('#textarea');
console.log('txt:',txt);//选中的文字
if(!txt || !txt.trim())return;
//获取位置
this.position.start= rangeDivDom.selectionStart;
this.position.end= rangeDivDom.selectionEnd;
console.log('position:',this.position);
},