Vue中输入框自动获取焦点-移动端ios不能唤起键盘解决办法
实现自动唤起键盘
方式一(推荐)
this.$nextTick(() => {
this.$refs.input.focus()
})
方式二
setTimeOut(()=>{
this.$refs.input.focus()
}, 500)
键盘唤起
延时时间不能过短,因为有页面重新渲染效果,延时时间过短会导致延时不在生效!
该方法在ios中不可用,因为ios为了保护安全,可能会禁止自动获取输入框focus方法
案例
<div class="right">
<div class="searchbtn" v-show="!isSearchbtn" @click="searchBtn">
<img class="searchimg" src="@/assets/images/search.png" />
</div>
<div class="search" v-show="isSearchbtn">
<input
type="text"
:placeholder="$t('Works.common.search')"
v-model.trim="submit.keyword"
autofocus
ref="searchtxt"
@keyup.enter="reloadList"
/>
<img
src="@/assets/images/search.png"
alt="search"
@click.enter="reloadList"
/>
</div>
</div>
</div>
// 搜索
searchBtn(k = true) {
this.isSearchbtn = k;
this.$nextTick(() => {
this.$refs.searchtxt.focus();
});
// setTimeout(() => {
// this.$refs.searchtxt.focus();
// }, 500);
},
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17634172.html