点击任意地方隐藏vue(vue点击div以外隐藏指定div)

wangyetexiao

温馨提示:这篇文章已超过287天没有更新,请注意相关的内容是否还可用!

点击任意地方隐藏vue(vue点击div以外隐藏指定div)

点击任意地方隐藏Vue中的指定div,可以通过以下步骤实现:

1. 在Vue的模板中添加一个用于显示和隐藏的div,并设置一个变量来控制其显示和隐藏的状态。在div外部添加一个点击事件,当点击div以外的区域时,隐藏div。

<template>

<div>

<div v-show="showDiv">这是要隐藏的div</div>

</div>

</template>

2. 在Vue的data属性中添加一个变量来控制div的显示和隐藏状态。初始状态下,div应该是可见的。

<script>

export default {

data() {

return {

showDiv: true

};

}

};

</script>

3. 在Vue的mounted钩子函数中,添加一个全局点击事件监听器。当点击事件发生时,检查点击的目标元素是否是div以外的区域,如果是,则隐藏div。

<script>

export default {

data() {

return {

showDiv: true

};

},

mounted() {

document.addEventListener("click", this.hideDiv);

},

methods: {

hideDiv(event) {

const target = event.target;

const div = this.$el.querySelector("div");

if (div && !div.contains(target)) {

this.showDiv = false;

}

}

}

};

</script>

通过以上步骤,我们可以实现点击任意地方隐藏Vue中的指定div。在Vue的模板中添加一个用于显示和隐藏的div,并设置一个变量来控制其显示和隐藏的状态。然后,在Vue的data属性中添加一个变量来控制div的显示和隐藏状态,并在mounted钩子函数中添加一个全局点击事件监听器。当点击事件发生时,检查点击的目标元素是否是div以外的区域,如果是,则隐藏div。

这种实现方式利用了Vue的指令v-show来根据变量的值来控制元素的显示和隐藏。通过全局点击事件监听器,我们可以在点击事件发生时执行相应的操作。这种方式可以应用于其他类似的需求,例如点击按钮显示/隐藏弹出框等。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码