首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue点击div显示与隐藏内容

vue实现点击某个div显示与隐藏内容功能实例

作者:渊来有你

最近做项目有用到某个div显示与隐藏内容,所以下面这篇文章主要给大家介绍了关于vue实现点击某个div显示与隐藏内容功能的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1.首先在所需要隐藏或显示的内容div加v-show,代表判断是否显示或隐藏

<div  v-show="shopShow">内容</div>

2.我这里是在打开内容中有一个 × 号来关闭显示效果,在iconfont图标的div加入一个点击事件

<div  @click="toggleShopShow">
            <span class="iconfont icon-close"></span>

3.在export default中代码如下

 export default {
    data () {
      return {
        shopShow: false, //默认内容不显示
    methods: {
      toggleShopShow () {
        this.shopShow = !this.shopShow //使false变为true显示
</script>

4.为其隐藏添加过渡动画效果,如下

在 × 处用transition包裹,并添加name属性

<transition name="fade">
 	<div class="activity-sheet-close" @click="toggleSupportShow">
            <span class="iconfont icon-close"></span>
 </transition>

为fade添加效果样式,在style中添加

&.fade-enter-active,&.fade-leave-active
        transition opacity .8s
&.fade-enter,&.fade-leave-to
        opacity 0

补充:Vue js 实现点击页面空白处隐藏指定div

<template>
    <!--向页面添加关闭div的事件监听-->
  <div class="page" @click="hide">
    <!--添加.stop防止page的点击事件触发,导致无法显示div-->
    <button @click.stop="show">点击显示div</button>
    <!--指定的div。添加.stop防止点击div内的元素时,整个div被关闭-->
    <div @click.stop>
<template>
<script>
export default {
    methods:{
        show(){},
        hide(){}
</script>
  1. 通过vue.js 事件的.stop修饰符可以阻止事件继续冒泡传播,也可以使用原生js事件的event.stopPropagation()方法。
  2. 通过向指定的div添加.stop,可以实现只有点击非该div内的元素时,才会往上冒泡至page,从而实现点击其他地方隐藏div。
  3. 要向触发显示div的按钮添加.stop,否则一点击按钮,触发show()之后传播到page,立马就会触发hide(),div就无法显示。

到此这篇关于vue实现点击某个div显示与隐藏内容功能的文章就介绍到这了,更多相关vue点击div显示与隐藏内容内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • Vue3.0组件通信mitt源码ts实例解析
    Vue3.0组件通信mitt源码ts实例解析
    2022-11-11
  • vue3+vite中使用vuex的具体步骤
    vue3+vite中使用vuex的具体步骤
    2022-11-11
  • vue项目网页自适应等比例放大缩小实例代码
    vue项目网页自适应等比例放大缩小实例代码
    2022-11-11
  • Vue组件生命周期三个阶段全面总结讲解
    Vue组件生命周期三个阶段全面总结讲解
    2022-11-11
  • vue实现点击某个div显示与隐藏内容功能实例
    vue实现点击某个div显示与隐藏内容功能实例
    2022-11-11
  • 利用vue控制元素的显示与隐藏
    利用vue控制元素的显示与隐藏
    2022-11-11
  • vue3中如何使用ref和reactive定义和修改响应式数据(最新推荐)
    vue3中如何使用ref和reactive定义和修改响应式数据(最新推荐)
    2022-11-11
  • Vite打包性能优化之开启Gzip压缩实践过程
    Vite打包性能优化之开启Gzip压缩实践过程
    2022-11-11
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2023 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号