Vue防止白屏添加首屏动画的实例


Posted in Javascript onOctober 31, 2019

单页应用有个无法避免的问题就是首屏加载慢,虽然可以通过gzip、路由懒加载、CDN、提高服务器带宽等手段,首屏加载速度仍然比传统多页应用慢一些。

为了提高用户体验,首屏添加loading动画很有必要,并且实现特别简单。

vue-cli3生成的项目中,打开index.html会发现如下代码

<body>
 <noscript>
  <strong>We're sorry but doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
 </noscript>
 <div id="app"></div>
 <!-- built files will be auto injected -->

我们只需要在这个div中插入loading代码即可,vue初始化完成后会自动替换

<div id="app">此处插入loading代码</div>

以下是我实现的一种动画效果,可自行替换

Vue防止白屏添加首屏动画的实例

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
 <meta http-equiv="X-UA-Compatible" content="chrome=1"/>
 <link rel="icon" href="<%= BASE_URL %>favicon.ico" rel="external nofollow" >
 <link rel="stylesheet" type="text/css" href="//at.alicdn.com/t/font_1112431_q8oa3yvrwbh.css" rel="external nofollow" >
 <title>demo</title>
 <style>
  .spinner {
   margin: 100px auto;
   width: 50px;
   height: 60px;
   text-align: center;
   font-size: 10px;
  }

  .spinner > div {
   background-color: #FE3C71;
   height: 100%;
   width: 6px;
   display: inline-block;
   -webkit-animation: stretchDelay 1.2s infinite ease-in-out;
   animation: stretchDelay 1.2s infinite ease-in-out;
  }

  .spinner .rect2 {
   -webkit-animation-delay: -1.1s;
   animation-delay: -1.1s;
  }

  .spinner .rect3 {
   -webkit-animation-delay: -1.0s;
   animation-delay: -1.0s;
  }

  .spinner .rect4 {
   -webkit-animation-delay: -0.9s;
   animation-delay: -0.9s;
  }

  .spinner .rect5 {
   -webkit-animation-delay: -0.8s;
   animation-delay: -0.8s;
  }

  @-webkit-keyframes stretchDelay {
   0%, 40%, 100% {
    -webkit-transform: scaleY(0.4)
   }
   20% {
    -webkit-transform: scaleY(1.0)
   }
  }

  @keyframes stretchDelay {
   0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
   }
   20% {
    transform: scaleY(1.0);
    -webkit-transform: scaleY(1.0);
   }
  }
 </style>
</head>
<body>
<noscript>
 <strong>We're sorry but demo doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app">
 <div class="spinner">
  <div class="rect1"></div>
  <div class="rect2"></div>
  <div class="rect3"></div>
  <div class="rect4"></div>
  <div class="rect5"></div>
 </div>
</div>
<!-- built files will be auto injected -->
</body>
</html>

以上这篇Vue防止白屏添加首屏动画的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
Apr 27 Javascript
来自国外的14个图片放大编辑的jQuery插件整理
Oct 20 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
Apr 25 Javascript
js单词形式的运算符
May 06 Javascript
angularjs的一些优化小技巧
Dec 06 Javascript
详细解读JavaScript编程中的Promise使用
Jul 27 Javascript
微信小程序 视图层(xx.xml)和逻辑层(xx.js)详细介绍
Oct 13 Javascript
微信小程序 scroll-view组件实现列表页实例代码
Dec 14 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
Apr 19 Javascript
js实现简单数字变动效果
Nov 06 Javascript
微信小程序 (地址选择1)--选取搜索地点并显示效果
Dec 17 Javascript
vue组件创建的三种方式小结
Feb 03 Javascript
vue弹出框组件封装实例代码
Oct 31 #Javascript
使用zrender.js绘制体温单效果
Oct 31 #Javascript
初学vue出现空格警告的原因及其解决方案
Oct 31 #Javascript
selenium+java中用js来完成日期的修改
Oct 31 #Javascript
VUE DEMO之模拟登录个人中心页面之间数据传值实例
Oct 31 #Javascript
vue项目出现页面空白的解决方案
Oct 31 #Javascript
vue项目引入ts步骤(小结)
Oct 31 #Javascript
You might like
php正则表达式学习笔记
2015/11/13 PHP
PHP中list方法用法示例
2016/12/01 PHP
PHP实现找出有序数组中绝对值最小的数算法分析
2017/08/07 PHP
postman的安装与使用方法(模拟Get和Post请求)
2018/08/06 PHP
学习ExtJS(一) 之基础前提
2009/10/07 Javascript
用方法封装javascript的new操作符(一)
2010/12/25 Javascript
jquery实现弹出窗口效果的实例代码
2013/11/28 Javascript
js实现仿QQ秀换装效果的方法
2015/03/04 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
JavaScript事件代理和委托详解
2016/04/08 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
微信小程序开发经验总结(推荐)
2017/01/11 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
JS实现给数组对象排序的方法分析
2019/06/24 Javascript
Echarts.js无法引入问题解决方案
2020/10/30 Javascript
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
Python扫描IP段查看指定端口是否开放的方法
2015/06/09 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
opencv改变imshow窗口大小,窗口位置的方法
2018/04/02 Python
基于Python List的赋值方法
2018/06/23 Python
python os.listdir按文件存取时间顺序列出目录的实例
2018/10/21 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
对python中UDP,socket的使用详解
2019/08/22 Python
python简单的三元一次方程求解实例
2020/04/02 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
size?爱尔兰官方网站:英国伦敦的球鞋精品店
2019/03/31 全球购物
一份报关员的职业规划范文
2014/01/08 职场文书
市场营销个人求职信范文
2014/02/02 职场文书
客户接待方案
2014/02/26 职场文书
经贸专业毕业生求职信范文
2014/05/01 职场文书
2014年幼儿园小班工作总结
2014/12/04 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
汽车车尾标语大全
2015/08/11 职场文书
社区服务理念口号
2015/12/25 职场文书
vite+vue3.0+ts+element-plus快速搭建项目的实现
2021/06/24 Vue.js
Vue的生命周期一起来看看
2022/02/24 Vue.js