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 相关文章推荐
js用Date对象的setDate()函数对日期进行加减操作
Sep 18 Javascript
详解AngularJS中的表格使用
Jun 16 Javascript
jQuery右下角旋转环状菜单特效代码
Aug 10 Javascript
Highcharts学习之坐标轴
Aug 02 Javascript
在一个页面重复使用一个js函数的方法详解
Dec 26 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
Aug 19 Javascript
Angular弹出模态框的两种方式
Oct 19 Javascript
vuejs中监听窗口关闭和窗口刷新事件的方法
Sep 21 Javascript
详解ES6 Fetch API HTTP请求实用指南
Nov 14 Javascript
js构造函数constructor和原型prototype原理与用法实例分析
Mar 02 Javascript
javascript设计模式 ? 观察者模式原理与用法实例分析
Apr 22 Javascript
如何用JavaScript实现一个数组惰性求值库
May 05 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+MYSQL的文章管理系统(一)
2006/10/09 PHP
php 保留字列表
2012/10/04 PHP
PHP实现的sqlite数据库连接类
2014/12/12 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
javascript 中对象的继承〔转贴〕
2007/01/22 Javascript
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
框架页面高度自动刷新的Javascript脚本
2013/11/01 Javascript
JS实现自动定时切换的简洁网页选项卡效果
2015/10/13 Javascript
Node.js操作mysql数据库增删改查
2016/03/30 Javascript
JS中Safari浏览器中的Date
2017/07/17 Javascript
基于JS实现移动端左滑删除功能
2017/07/28 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
Vue 3.0中jsx语法的使用
2020/11/13 Javascript
js简单粗暴的发布订阅示例代码
2021/01/23 Javascript
python进阶教程之词典、字典、dict
2014/08/29 Python
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
仅利用30行Python代码来展示X算法
2015/04/01 Python
分享一下Python 开发者节省时间的10个方法
2015/10/02 Python
详解Python中的变量及其命名和打印
2016/03/11 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
Python读写docx文件的方法
2018/05/08 Python
Django csrf 验证问题的实现
2018/10/09 Python
python实现事件驱动
2018/11/21 Python
numpy ndarray 取出满足特定条件的某些行实例
2019/12/05 Python
keras slice layer 层实现方式
2020/06/11 Python
Python字典取键、值对的方法步骤
2020/09/30 Python
HTML5 Canvas标签使用收录
2009/07/07 HTML / CSS
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
2018/07/12 HTML / CSS
局部内部类是否可以访问非final变量?
2013/04/20 面试题
趣味活动策划方案
2014/02/08 职场文书
献爱心活动总结
2014/05/07 职场文书
环卫工人节活动总结
2014/08/29 职场文书
英雄儿女观后感
2015/06/09 职场文书
python 中的@运算符使用
2021/05/26 Python
python标准库ElementTree处理xml
2022/05/20 Python