vue 点击其他区域关闭自定义div

Posted aaronls

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue 点击其他区域关闭自定义div相关的知识,希望对你有一定的参考价值。

1、vue模块中的内容

<template>
     <div class="hello"  @click="hidePanel">
          <div id="myPanel" v-if="panelShow"></div>
     </div>
</template>

 第一步,我们在自己的vue模块中整体添加了一个hidePanel事件,准备整体区域进行点击,然后id为myPanel的div是我们要处理的那个小组件。

 

2、定义变量

data () {
   return {
       panelShow: true
   }
}

 

3、第三步才是重点,其实大家都知道,要触发一个事件,然后这个事件还是点击事件,点击到我们这个id是 myPanel以外的地方才进行一些操作,也就是把panelShow赋值为false

methods: {
  hidePanel: function(event){
     let sp = document.getElementById("myPanel");
     if(sp){
        if(!sp.contains(event.target)){//这句是说如果我们点击到了id为myPanel以外的区域
           this.panelShow = false;
        }
     }
  }
}

 

 

 

以上是关于vue 点击其他区域关闭自定义div的主要内容,如果未能解决你的问题,请参考以下文章

点击自定义下拉框以外的区域关闭下拉框

VsCode编辑器如何自定义代码片段

vue 下拉框自定义 以及点击空白空白处关闭下拉框

VSCode自定义代码片段1——vue主模板

VSCode自定义代码片段(vue主模板)

VSCode自定义代码片段——.vue文件的模板