这篇“vue环境怎么实现div focus blur焦点事件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue环境怎么实现div focus blur焦点事件”文章吧。
vue div focus blur焦点事件
setTimeout(()=>{
this.$refs.aside.focus()
},100)div想支持则需要加上tabindex="0"属性//0或者以上
但是在vue环境中,加上这个也不支持,而移动端无法使用鼠标事件
<div tabindex="0" hidefocus="true" ref="aside" class="aside" @click="dialaing()" @blur='()=>{dialaingIsShow =false}'>
<div v-show="dialaingIsShow" class="dialaing">dsadasd</div>
</div>dialaing(){
this.$refs.aside.focus()
this.dialaingIsShow = true
},就可以了
vue div 获得焦点和失去焦点
<div tabindex="0" @blur="aside1_hide()" ref="aside1" class="aside" >
<!-- background-color="#23303E" transparent -->
<el-menu background-color="#23303E" text-color="#fff" active-text-color="#fff">
...
</el-menu>
</div>
left_click: function() {
if (!this.left_show) {
this.$refs.aside1.style.left = "0"
this.$refs.aside1.focus() //获得焦点
this.left_show = true
} else {
this.aside1_hide()
}
},
aside1_hide:function () {
this.$refs.aside1.style.left = "-200px"
this.left_show = false
}, @media screen and (min-width: 1200px) {
.aside {
position: static;
width: 200px;
height: 100vh;
margin: 0;
padding: 0;
background-color: #23303E;
z-index: 100;
/*移动时的过度效果*/
transition: left 500ms ease;
color: #fff;
}
}
@media screen and (max-width: 1200px) {
/*隐藏在左边*/
.aside {
position: fixed;
/*相对于窗口固定定位*/
top: 0;
left: -200px;
/*隐藏在左边*/
width: 200px;
height: 100vh;
margin: 0;
padding: 0;
background-color: #23303E;
z-index: 100;
/*移动时的过度效果*/
transition: left 500ms ease;
/*padding: 36px;*/
color: #fff;
}
}
/*可以滚动,但隐藏滚动条*/
.aside::-webkit-scrollbar {
display: none;
}以上就是关于“vue环境怎么实现div focus blur焦点事件”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注天达云行业资讯频道。