WOW.js 是一款帮助你实现滚动页面时触发CSS 动画效果的插件。

缺陷:当页面向下滚动时,动画出现;当页面向上回滚时,动画不会回退。(即动画仅出现一次!)

官网地址  https://www.delac.io/wow/

Demo演示-仿oppo首页   https://www.dowebok.com/demo/131/index2.html

目录

1. 安装

2. 配置

3. 使用

4. 自定义动画持续时间

5. 自定义动画延迟时间

6. 自定义滚动距离

7. 自定义动画重复次数

完整范例代码


1. 安装

npm install wowjs --save-dev

animate.css会自动安装

2. 配置

main.js中

// 动画 animate.css
require('animate.css/animate.min.css');// 滚动动画 wow.js
import {WOW} from 'wowjs'
Vue.prototype.$wow = new WOW({boxClass: 'wow', // defaultanimateClass: 'animated', // defaultoffset: 150, // defaultmobile: true, // defaultlive: false,// live为true时,控制台会提示:MutationObserver is not supported by your browser. & WOW.js cannot detect dom mutations, please call .sync() after loading new content.callback: function(box) {console.log("WOW: animating <" + box.tagName.toLowerCase() + ">")}
})
属性/方法 类型 默认值 说明
boxClass 字符串 ‘wow’ 需要执行动画的元素的 class
animateClass 字符串 ‘animated’ animation.css 动画的 class
offset 整数 0 距离可视区域多少开始执行动画
mobile 布尔值 true 是否在移动设备上执行动画
live 布尔值 true 异步加载的内容是否有效

offset为0时,设置动画的元素在出现在浏览器可视区域时执行动画

3. 使用

在需要添加滚动动画的 .vue文件中,先初始化wow

        mounted() {this.$nextTick(()=>{this.$wow.init()})},

异步加载部分,使用watch初始化

watch: {xxxx() {this.$nextTick(() => { // 在dom渲染完后,再执行动画this.$wow.init()})}
}

完成初始化后,在需要添加动画的元素上,添加上相关动画的类名即可

 <div class="wow animate__animated animate__fadeIn">900</div>

wow 为配置中的动画类名,必要!

animate__animated animate__fadeIn 为animate.css 的动画效果,更多动画效果详情见 https://blog.csdn.net/weixin_41192489/article/details/111083527

4. 自定义动画持续时间

添加 data-wow-duration="2s"

<div class="wow animate__animated animate__fadeIn" data-wow-duration="2s">900</div>

5. 自定义动画延迟时间

添加 data-wow-delay="5s"

<div class="wow animate__animated animate__fadeIn" data-wow-delay="5s">900</div>

6. 自定义滚动距离

添加 data-wow-offset="200"   效果:当元素距离可视区域200时开始执行动画(元素顶部到浏览器底部的距离)

<div class="wow animate__animated animate__fadeIn" data-wow-offset="200">900</div>

7. 自定义动画重复次数

添加 data-wow-iteration="2"  效果:动画会连续播放2次

<div class="wow animate__animated animate__fadeIn" data-wow-iteration="2" >900</div>

若想动画无限重复播放,则使用  data-wow-iteration="infinite"

<div class="wow animate__animated animate__fadeIn" data-wow-iteration="infinite" >900</div>

完整范例代码

<template><div><div class="box100">0</div><div class="box100">100</div><div class="box100">200</div><div class="box100">300</div><div class="box100">400</div><div class="box100">500</div><div class="box100">600</div><div class="box100">700</div><div class="box100">800</div><div class="box100 wow animate__animated animate__fadeIn" >900</div><div class="box100">1000</div><div class="box100">1100</div><div class="box100">1200</div></div>
</template>
<script>export default {mounted() {this.$nextTick(()=>{this.$wow.init()})},}
</script>
<style scoped>.box100 {height: 100px;background: #3a8ee6;border: 1px solid black;}
</style>

vue页面滚动动画——wow.js教程相关推荐

  1. 50天50个前端小项目(纯html+css+js)第六天(页面滚动动画)

    今天我们来实现的是页面滚动动画,比如说页面使用鼠标滚轮向下滚动的时候,内容区域会分别从左从右滑动到居中的内容区域,大概效果如下: 接下来来看实现 首先是html: 没什么特别的地方,主要就是设置一些内 ...

  2. html如何设置滚动动画,JavaScript 实现页面滚动动画

    在做前端 UI 效果时,让元素根据滚动位置实现动画效果是一个非常流行的设计,通常我们会使用第三方插件或库来实现.在本教程中,我将教大家使用纯 JavaScript 和 CSS 来实现. 先预览一下实现 ...

  3. vue页面切换动画-类似于轮播效果、渲染列表给每一行数据加上显示动画

    vue页面切换动画-类似于轮播效果 <transition :name="transitionName"><router-view/> </trans ...

  4. 使用wow.js和animate.css实现页面滚动动画效果

    wow.js是一款结合了Animate.css,可以在页面向下滚动时,为页面中的元素加载动画的js. 项目地址:GitHub - graingert/WOW: Reveal CSS animation ...

  5. 网页滚动特效—WOW.JS快速使用教程

    一.wow.js 当页面滚动时产生一些动画效果 页面在向下滚动的时候,有些元素会产生细小的动画效果.虽然动画比较小,但却能吸引你的注意. 所需要的附件:wow.js animate.css(文章最后有 ...

  6. animate.css 在 vue 脚手架中结合wow.js的应用方法详细介绍

    简介 众所周知,animate.css是非常优秀的CSS3动画库,不依赖于jQuery,纯CSS动画,但是不兼容IE8及以下版本,就算用jq控制,性能也不是很好. wowjs向下滚动页面时显示CSS动 ...

  7. 前端动画 wow.js 效果

    让花里胡哨的特效变简单 wow.js动画class介绍 引入css样式以及js插件 <link rel="stylesheet" type="text/css&qu ...

  8. JavaScript 实现页面滚动动画

    先预览一下实现效果: 我们使用 CSS 来实现动画,用 JavaScript 来处理触发所需的样式.我们先来创建布局. 创建布局 我们先使用 HTML 创建页面布局,然后为需要实现动画的元素分配一个通 ...

  9. 滚动旋钮时禁止页面滚动-jquery.knob.js

    jquery.knob.js一款很棒的jquery旋钮插件 gayhub地址:https://github.com/aterrien/jQuery-Knob 当鼠标滚轮作用于旋钮时,禁止页面滚动 $( ...

最新文章

  1. Mac下使用crontab来实现定时任务
  2. skyline三维模型规格
  3. python3 语言翻译相关库
  4. php input多选,利用css3更改input单选和多选样式的方法
  5. ASP.NET Core之跨平台的实时性能监控(2.健康检查)
  6. BZOJ-1798 维护序列
  7. 1024电商项目的邮箱验证码与图形验证码功能模块
  8. 海奥华预言--第一章 神秘邀请
  9. 阿里云服务器对外开放tomcat端口访问
  10. 【分布式】Zookeeper序列化及通信协议
  11. ZIGBEE协议栈如何低功耗(CC2530+ZIGBEE2.5)
  12. 安卓控件button添加背景图片
  13. 钢琴作品常用体裁名称及曲式
  14. 二次型相似对角化的原因
  15. identifier “ “ is undefined 错误
  16. 如何给图片加水印,图片加水印怎么加
  17. 简单Java的商品模块功能
  18. git基础教程(11) git checkout命令,掌握这些足以
  19. 访韩家炜教授记录(部分)
  20. 炼石喜获“2020中国网络安全产业联盟突出贡献单位奖”

热门文章

  1. 【从零开始学习 SystemVerilog】3.1.4、SystemVerilog 控制流—— forever 循环
  2. 微信小程序---配置普通链接二维码规则
  3. 洛谷P1564 膜拜 题解
  4. 百度网盘登录测试用例
  5. DDR2-DDR3-IP-CARE ---use
  6. [NOI 2005]聪聪和可可
  7. 星网宇达利用NTRIPClient连接千寻服务器获取差分定位数据
  8. CUDA总结:共享内存
  9. SAP:XK01 SAPMF02K 用户出口: 供应商主数据 .
  10. 使用OpenCV中的色彩空间进行颜色分割