vue 过渡效果transition

1.把需要过渡的元素放入<transition>标记中
2.使用name 将相应的元素与样式关联起来

<transition name="fade" mode="out-in">
            <button v-if="isOn" @click="isOn=!isOn" key="on">打开</button>
            <button v-else @click="isOn=!isOn" key="off">关闭</button>
</transition>
<style>
       .fade-enter {     //  进入时的初始状态
            opacity: 0;
        }
        .fade-enter-to {   //进入过渡结束状态
            opacity: 1;
        }
        .fade-leave {      //离开过渡的开始状态
            opacity: 1;
        }
        .fade-leave-to {      //离开时的初始状态
            opacity: 0;
        }
        .fade-enter-active {    //进入过渡生效的状态
            transition: all 0.8s ease;
        }
        .fade-leave-active {    //离开过渡生效时的状态
            transition: all 0.8s ease;
        }
</style>
——————————————————————————
           <li @mouseenter="changeIndustry(2)" @mouseleave="changeIndustry(2)">
                                <div v-show="showIndustry[2]">
                                    <img src="../assets/images/solution/jingqu/icon02.png" alt />
                                    <p>游客满意度下降</p>
                                    <div class="line"></div>
                                </div>
                                <transition name="proMove">
                                    <div class="quesConActive" v-show="!showIndustry[2]">
                                        <h3>游客满意度下降</h3>
                                        <div class="line"></div>
                                        <p>长时间的排队情况</p>
                                        <p>导致游客满意度下降</p>                                
                                    </div>
                                </transition>
                            </li>
    data() {
        return {
            showIndustry: {
                "1": true,
                "2": true,
                "3": true,
                "4": true,
            }
        };
    },
    methods: {
        changeIndustry(num) {
            this.showIndustry[num] = !this.showIndustry[num];
        },
    },

/* 动画 */
.proMove-enter,
.proMove-leave-to {
    opacity: 0;
}
.proMove-enter-active,
.proMove-leave-active {
    transition: opacity 1s;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 为了在vue里做个轮播图,找遍了网页博客,终于找到一个看的懂得文章具体轮播图的做法参考原文地址:点击这里 vue过...
    竹小星阅读 2,292评论 0 1
  • 关于vue的过渡效果,vue官方给的概述是这样的。Vue 在插入、更新或者移除 DOM 时,提供多种不同方式的应用...
    HNS阅读 1,562评论 0 4
  • 本效果运用了vue的过渡效果实现 相关代码运用: v-if:条件渲染,将元素删除再渲染出来。 v-show:条件展...
    竹小星阅读 14,634评论 3 6
  • enter 与 leave 钩子函数可以接受可选的第二个参数:一个回调函数。当你的函数签名中含有第二个参数时,即表...
    zhangjingbibibi阅读 235评论 0 0
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 29,074评论 1 45

友情链接更多精彩内容