input输入框失去焦点时获取光标位置并插入内容
<el-input @blur="blur" :rows="5" v-model="messageForm.content" type="textarea" maxlength="100" show-word-limit placeholder="请输入你的留言"></el-input>
data() { return { cursorIndexStart: null,//光标选中开始的位置 cursorIndexEnd: null,//光标选中结束的位置 } },
blur(e){ this.cursorIndexStart = e.srcElement.selectionStart // 获取input输入框失去焦点时光标选中开始的位置 this.cursorIndexEnd = e.srcElement.selectionEnd // 获取input输入框失去焦点时光标选中结束的位置 },
//在光标处插入数据 output(val) { if (this.cursorIndexStart !== null && this.messageForm.content) { //如果 文本域获取了焦点, 则在光标位置处插入对应字段内容 this.messageForm.content = this.messageForm.content.substring(0, this.cursorIndexStart) + val + this.messageForm.content.substring(this.cursorIndexEnd) } else { // 如果 文本域未获取焦点, 则在字符串末尾处插入对应字段内容 this.messageForm.content = this.messageForm.content?this.messageForm.content:'' + val } },
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了