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 相关文章推荐
json格式化/压缩工具 Chrome插件扩展版
May 25 Javascript
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
Nov 03 Javascript
jquery iframe操作详细解析
Nov 20 Javascript
简单方法判断JavaScript对象为null或者属性为空
Sep 26 Javascript
express的中间件bodyParser详解
Dec 04 Javascript
Javascript简单实现面向对象编程继承实例代码
Nov 27 Javascript
使用jQuery判断浏览器滚动条位置的方法
May 30 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
Apr 01 Javascript
Vue的MVVM实现方法
Aug 16 Javascript
JavaScript事件冒泡与事件捕获实例分析
Aug 01 Javascript
详解Vue结合后台的列表增删改案例
Aug 21 Javascript
vue-cli 默认路由再子路由选中下的选中状态问题及解决代码
Sep 06 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 CURL获取cookies模拟登录的方法
2013/11/04 PHP
PHP调试函数和日志记录函数分享
2015/01/31 PHP
ucenter中词语过滤原理分析
2016/07/13 PHP
cakephp常见知识点汇总
2017/02/24 PHP
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
Javascript延迟执行实现方法(setTimeout)
2010/12/30 Javascript
基于jQuery.Validate验证库知识点的详解
2013/04/26 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
nodejs中使用多线程编程的方法实例
2015/03/24 NodeJs
JavaScript使用Prototype实现面向对象的方法
2015/04/14 Javascript
jquery ajax 如何向jsp提交表单数据
2015/08/23 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
基于javascript bootstrap实现生日日期联动选择
2016/04/07 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
JS全局变量和局部变量最新解析
2016/06/24 Javascript
javascript实现的上下无缝滚动效果
2016/09/19 Javascript
ReactNative实现图片上传功能的示例代码
2017/07/11 Javascript
解决vue-cli + webpack 新建项目出错的问题
2018/03/20 Javascript
vue 项目中使用Loading组件的示例代码
2018/08/31 Javascript
vue 巧用过渡效果(小结)
2018/09/22 Javascript
详解在Node.js中发起HTTP请求的5种方法
2019/01/10 Javascript
[56:00]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第一局
2016/03/05 DOTA
Python while、for、生成器、列表推导等语句的执行效率测试
2015/06/03 Python
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
python 数据的清理行为实例详解
2017/07/12 Python
python utc datetime转换为时间戳的方法
2019/01/15 Python
python傅里叶变换FFT绘制频谱图
2019/07/19 Python
Pandas实现DataFrame按行求百分数(比例数)
2019/12/27 Python
俄罗斯便宜的在线服装商店:GroupPrice
2020/04/10 全球购物
酒店个人求职信范文
2014/01/25 职场文书
2014年人事行政工作总结
2014/12/03 职场文书
2015年组织委员工作总结
2015/04/23 职场文书
捐款通知怎么写
2015/04/24 职场文书
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
Java生成日期时间存入Mysql数据库的实现方法
2022/03/03 Java/Android
MySQL池化框架学习接池自定义
2022/07/23 MySQL