+-
首页 专栏 javascript 文章详情
关注作者
关注作者
0
vue @blur和@click冲突
user_YG4HiUnu 发布于 3 月 2 日
关于@blur和@click或者@tap冲突问题
网上大部分是让失去焦点的方法的setTimeout延时执行达到点击效果,当然要求不高没问题。测试设置300ms以上才会有效,但是如果是一个弹出框延时300ms明显有点卡顿的感觉。所以有了下面的思路。
onUnFocus() {
this.showView = false
setTimeout(() => {
this.inputIsShow = false
}, 500)
},
结合下面体验效果杠杠的
<view v-if="inputIsShow" :style="{ opacity: showView ? 1 : 0 }"></view>
javascript html vue.js
阅读 6 发布于 3 月 2 日
赞
收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
user_YG4HiUnu
1 声望
0 粉丝
0 条评论
得票 时间
提交评论
user_YG4HiUnu
1 声望
0 粉丝
宣传栏
目录
▲
关于@blur和@click或者@tap冲突问题
网上大部分是让失去焦点的方法的setTimeout延时执行达到点击效果,当然要求不高没问题。测试设置300ms以上才会有效,但是如果是一个弹出框延时300ms明显有点卡顿的感觉。所以有了下面的思路。
onUnFocus() {
this.showView = false
setTimeout(() => {
this.inputIsShow = false
}, 500)
},
结合下面体验效果杠杠的
<view v-if="inputIsShow" :style="{ opacity: showView ? 1 : 0 }"></view>