本文实例为大家分享了vue实现页面刷新动画的具体代码,供大家参考,具体内容如下
做一个vue的页面刷新动画,找了好多动画样式,感谢大佬们造的轮子。
主要就是在index.html文件里面写一个动画样式,在页面刷新的时候让他去前面做动画,等我们的样式可以加载的时候去把这个动画样式给移除掉就可以了,而判断我们的样式是否加载好可以用created生命周期去判断,因为这个生命周期是在浏览器解析完html的各种样式后触发的,所以可以在app.vue的created生命周期里面把动画样式移除
接下来是代码
index.html里面的代码
css样式:
<style type="text/css" scoped="scoped"> html,body { width: 100%; height: 100%; padding: 0; margin: 0; background: cornflowerblue; } .loadings{ width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; } .spinner { width: 300px; height: 50px; position: relative; display: flex; justify-content: center; align-items: center; } .spinner > div { width: 30px; height: 30px; background-color: #67CF22; border-radius: 100%; margin: 0px 10px; display: inline-block; -webkit-animation: bouncedelay 1.4s infinite ease-in-out; animation: bouncedelay 1.4s infinite ease-in-out; /* Prevent first frame from flickering when animation starts */ -webkit-animation-fill-mode: both; animation-fill-mode: both; } .spinner .bounce1 { -webkit-animation-delay: -0.32s; animation-delay: -0.32s; } .spinner .bounce2 { -webkit-animation-delay: -0.16s; animation-delay: -0.16s; } @-webkit-keyframes bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0.0) } 40% { -webkit-transform: scale(1.0) } } @keyframes bouncedelay { 0%, 80%, 100% { transform: scale(0.0); -webkit-transform: scale(0.0); } 40% { transform: scale(1.0); -webkit-transform: scale(1.0); } } #app{ display: none; } </style>
html代码
<body> <div class="loadings"> <div class="spinner"> <div class="bounce1"></div> <div class="bounce2"></div> <div class="bounce3"></div> </div> </div> <div id="app"></div> </body>
下面是app.vue的代码
<script> export default { name: 'App', data() { return { } }, created() { //判断有没有动画的盒子在,在的话移除掉 let loading = document.getElementsByClassName('loadings')[0] if(loading){ document.body.removeChild(loading) } } } </script> <style lang="less"> body{ background: white;//这里是把动画影响的背景颜色改回来 } #app{ width: 100%; height: 100%; display: block; //这里是把隐藏的app盒子展示出来 } </style>
这就是所有的页面刷新动画的代码了
热门文章
- 12月7日 - 最高速度21.6M/S,2024年Nekobox每天更新免费节点订阅链接
- 在vue项目中如何获取视频的时长_vue.js_
- 12月23日 - 最高速度19.2M/S,2024年Nekobox每天更新免费节点订阅地址
- 动物防疫站打疫苗多少钱啊 动物防疫站打疫苗多少钱啊一针
- 1月23日 - 最高速度18.8M/S,2025年Nekobox每天更新免费节点订阅地址
- 为什么不给猫打狂犬疫苗的原因(家猫为啥不建议打狂犬)
- 11月25日 - 最高速度23M/S,2024年Nekobox每天更新免费节点订阅链接
- java建立tcp连接 netty_使用Netty处理Java中成千上万个连接的原理 -DZone性能
- unity 编辑器扩展简单入门
- 动物医院实践心得体会怎么写范文 动物医院实践心得体会怎么写范文大全