vue如何通过opacity控制导航栏的动态显隐或其他样式的动画显隐效果

2023-10-15 01:38

本文主要是介绍vue如何通过opacity控制导航栏的动态显隐或其他样式的动画显隐效果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如何通过opacity控制导航栏的动态显隐或其他样式的动画显隐效果

话不多说,先上图
在这里插入图片描述
这里两个导航栏分别是不同的组件(我使用的是Vue),但样式原理是一样的,可以用vuex或是父子组件传值的方式来控制v-show的true或false,在点击全屏按钮时,顶部导航栏会向父组件传递一个事件,在父组件进行监听,随后根组件会动态的向两个子组件(两个导航栏)派发当前v-show的值,之后我们通过settimeout函数令v-show这一事件做延迟处理,先让导航栏的opacity即透明度进行一个变化,待透明度完全变为0时(虽然此时透明度为0,不显示该元素,但仍然存在该元素,依旧会进行占位)触发v-show=“false”,这样 就达到了以上的效果

methods: {ChangeNav () {this.TopOpacity = 0this.LeftOpacity = 0this.transition = 'all 1s'setTimeout(() => {this.TOP = falsethis.LEFT = false}, 1000)}

这里是点击全屏按钮时的函数

GeneralControl () {this.TOP = truethis.LEFT = truesetTimeout(() => {this.TopOpacity = '1'this.LeftOpacity = '1'this.transition = '0.8s'}, 800)},

这个是恢复两条导航栏的显示

template><div class="container"><top-navbar:TOP="TOP"@ChangeNav="ChangeNav":style="{ 'opacity': TopOpacity, 'transition' : transition }"@NeedChangePlace="ChangePlace"@NeedReplace="Replace"></top-navbar><left-navbar:LEFT="LEFT":style="{ 'opacity': LeftOpacity, 'transition': transition, 'top' : LeftNavTop }"@NeedChangeInnerwrapper="NeedChangeInnerwrapper"@NeedReplaceInnerwrapper="NeedReplaceInnerwrapper"></left-navbar>

当然这里要提前在data中定义好,并且通过属性绑定的方式将两个导航栏的样式绑定好

TOP: true,LEFT: true,TopOpacity: '1',LeftOpacity: '1',transition: '',

data中要声明好

好啦,以上就是这个效果的显示方式啦!希望我们一同进步

这篇关于vue如何通过opacity控制导航栏的动态显隐或其他样式的动画显隐效果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/214526

相关文章

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

Spring Security+JWT如何实现前后端分离权限控制

《SpringSecurity+JWT如何实现前后端分离权限控制》本篇将手把手教你用SpringSecurity+JWT搭建一套完整的登录认证与权限控制体系,具有很好的参考价值,希望对大家... 目录Spring Security+JWT实现前后端分离权限控制实战一、为什么要用 JWT?二、JWT 基本结构

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

MySQL中动态生成SQL语句去掉所有字段的空格的操作方法

《MySQL中动态生成SQL语句去掉所有字段的空格的操作方法》在数据库管理过程中,我们常常会遇到需要对表中字段进行清洗和整理的情况,本文将详细介绍如何在MySQL中动态生成SQL语句来去掉所有字段的空... 目录在mysql中动态生成SQL语句去掉所有字段的空格准备工作原理分析动态生成SQL语句在MySQL

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方