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 相关文章推荐
jquery子元素过滤选择器使用示例
Jun 24 Javascript
javascript获取所有同类checkbox选项(实例代码)
Nov 07 Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
Jul 27 Javascript
jquery判断input值不为空的方法
Jun 05 Javascript
Angular ng-repeat遍历渲染完页面后执行其他操作详细介绍
Dec 13 Javascript
微信小程序中子页面向父页面传值实例详解
Mar 20 Javascript
面试常见的js算法题
Mar 23 Javascript
React Native如何消除启动时白屏的方法
Aug 08 Javascript
详解js动态获取浏览器或页面等容器的宽高
Mar 13 Javascript
ES6数组与对象的解构赋值详解
Jun 14 Javascript
Vue实现移动端拖拽交换位置
Jul 29 Javascript
关于angular 8.1使用过程中的一些记录
Nov 25 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
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
2015/08/23 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
Aster vs KG BO3 第二场2.19
2021/03/10 DOTA
jquery.fileEveryWhere.js 一个跨浏览器的file显示插件
2011/10/24 Javascript
jQuery源码分析-05异步队列 Deferred 使用介绍
2011/11/14 Javascript
Prototype源码浅析 Enumerable部分之each方法
2012/01/16 Javascript
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
jQuery实现淡入淡出二级下拉导航菜单的方法
2015/08/28 Javascript
JavaScript模拟鼠标右键菜单效果
2020/12/08 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
centos系统升级python 2.7.3
2014/07/03 Python
Python判断变量是否已经定义的方法
2014/08/18 Python
Python网络编程使用select实现socket全双工异步通信功能示例
2018/04/09 Python
django中模板的html自动转意方法
2018/05/27 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
解决Python 使用h5py加载文件,看不到keys()的问题
2019/02/08 Python
Python实现的登录验证系统完整案例【基于搭建的MVC框架】
2019/04/12 Python
纯python进行矩阵的相乘运算的方法示例
2019/07/17 Python
Python实现中值滤波去噪方式
2019/12/18 Python
检测tensorflow是否使用gpu进行计算的方式
2020/02/03 Python
python实现猜拳游戏项目
2020/11/30 Python
HTML5 Canvas基本线条绘制的实例教程
2016/03/17 HTML / CSS
电气工程及其自动化自我评价四篇
2013/09/24 职场文书
业务主管岗位职责
2013/11/20 职场文书
大学校园毕业自我鉴定
2014/01/15 职场文书
区优秀教师事迹材料
2014/02/10 职场文书
感恩之星事迹材料
2014/05/03 职场文书
领导班子整改措施
2014/10/24 职场文书
临时工聘用合同协议书
2014/10/29 职场文书
南京南京观后感
2015/06/02 职场文书
MySQL详细讲解变量variables的用法
2022/06/21 MySQL
JS前端可扩展的低代码UI框架Sunmao使用详解
2022/07/23 Javascript