首先先将input 设置为readonly="readonly"状态
input添加点击事件click(防止多次点击唤出软键盘) 后在input readonly 状态下聚焦
let ele = document.getElementById(`no${index}`)ele.setAttribute('readonly', 'readonly')if (ele) {ele.focus()ele = null}
聚焦后利用setTimeout延迟再将readonly 属性移除
setTimeout(()=>{let ele = document.getElementById(`no${index}`)if(ele){ele.removeAttribute('readonly')ele = null}},200)
总的来说就是先readonly 再聚焦 紧接着再移除 readonly
input 初始创建的时候最好直接是readonly 状态
如果初始不是readonly,页面渲染后js动态将input变成readonly ,再执行 focus操作。 有兼容性,部分型号的手机软键盘还是会唤起