methods_vue3设置输入框光标">
赞
踩
在调试移动端的时候,由于触摸事件,光标有时候会错位,所以导致有需求需要控制js光标的位置,要么在前要么在后,在查了相关的资料后,发现其实很简单,就几行代码能实行,并且兼容多种浏览器。
<input placeholder="str" type="number" v-model="model" @focus="End($event)" /> methods:{ End(e){ //input获取光标显示在最后 let obj = e.srcElement; obj.focus(); const len = obj.value.length; //光标定位要加上 setTimeOut,不然就会重新光标定位失败 setTimeout(()=>{ obj.selectionStart = obj.selectionEnd = len; },60) } }
在这里唯一要注意的是,一定要加上setTimeOut或者在nextTick使用,否则的话可能会导致光标定位失败。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。