vue 表单输入框不支持focus及blur事件的解决方案
短视频,自媒体,达人种草一站服务 这篇文章主要介绍了vue 表单输入框不支持focus及blur事件的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 采用指令的方式来解决这个问题(此处的前端框架以mint-ui为例): 1.html引用: v-mtfocus 2.在实例中添加指令 directives: { 补充知识: vue中实现点击按钮使input显示的同时获取焦点 需求说明:点击搜索按钮出现input框,并自动使input框聚焦。 如图所示: 实现方式1:利用vue的ref html代码如下: <input ref="inputVal" type="text" v-model="searchVal" placeholder="搜索标题或内容..." /> Js代码如下: searchIn(){ 重点:只需要把需要的操作放在$nextTick内即可。 实现方式2:利用js(原理其实等同于方式1) <input type="text" v-model="searchVal" placeholder="搜索标题或内容..." /> Js代码如下: searchIn(){ 说明:必须在$nextTick内使用方法是因为:dom更新的先后顺序的问题,不是所有的数据改变一定会触发dom的更新,而在修改数据之后立即使用这个方法,可以获取更新后的 dom。 误区:直接使用autofocus html: <input v-bind:autofocus="!searchBtnFlag" type="text" v-model="searchVal" placeholder="搜索标题或内容..." /> js: searchIn(){ 这样的写法只在第一次时起作用,如果点击取消后再次点击搜索按钮则不会再次使input框自动聚焦。 记录一下,以备以后忘了好找。 以上这篇vue 表单输入框不支持focus及blur事件的解决方案就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。 (编辑:52站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |