WowJS:滚动页面时添加动画效果

WOW是animate.css的好朋友,一开始的时候动画效果并不会出现,只有当界面滚动的时候或者是当达到一定的值得时候才会出现动画效果
WOW.js地址
animate.css地址
WOW demo地址

WOW.js要配合animate.css使用!!

引入wow.js:

<link rel="stylesheet" type="text/css" href="css/animate.css">
<script type="text/javascript" src="js/wow.min.js"></script>
<script type="text/javascript">
    new WOW() .init();
</script>

简单示例:(必须设置为块状或者行内块状!)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>WOW动画效果</title>
    <link rel="stylesheet" type="text/css" href="css/animate.css">
</head>
<body>
 <div class ="wow bounceInUp">
    <div style="width: 100px;height: 100px;background: #00ff00;margin: 0 auto;"></div>
 </div>
</body>
</html>
<script type="text/javascript" src="js/wow.min.js"></script>
<script type="text/javascript">
    new WOW() .init();
</script>

用法介绍:
1、使元素显现

添加类`.wow`到HTML元素,它将不可见,直到用户滚动显示它。
 <div class ="wow">
     内容显示在这里
</div>

2、选择动画风格

在Animate.css中选择动画样式,然后将CSS类添加到HTML元素。
 <div class =“wow bounceInUp”>
    内容显示在这里
</div>

示例二:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>WOW动画效果</title>
    <link rel="stylesheet" href="css/animate.css">
    <style>
        *{
            margin: 0;
            padding: 0;
            border:none;
        }
        .box{
            width: 900px;
            height: 300px;
        }
        .box div{
            width: 400px;
            height: 300px;
            background: red;
        }
        .box div:nth-of-type(1){
            float: left;
        }
        .box div:nth-of-type(2){
            float: right;
        }
    </style>
    <script src="js/wow.min.js"></script>
    <script>
        window.onload=function(){
            new WOW().init();
        }
    </script>
</head>
<body>
<div class="box">
    <div class="wow slideInLeft">1</div>
    <div class="wow slideInRight">2</div>
</div>
</body>
</html>

高级设置

data-wow-duration:更改动画持续时间
data-wow-delay:动画开始之前的延迟
data-wow-iteration:动画的次数重复
data-wow-offset:开始动画的距离(与浏览器底部相关)

<div class="box">
    <div class="wow slideInLeft" data-wow-delay="0s" data-wow-iteration="4">1</div>
    <div class="wow slideInRight"data-wow-delay="2s" >2</div>
</div>

这里指的开始动画的距离是与浏览器底部的距离,一开始的时候动画没有出现。

$(function(){
       //1.初始化
       new WOW().init();
        //2.监听页面滚动
        var vheight= 0, vscroll= 0, voffset=0,vDataWowOffset=0;
       $(window).on('scroll',function(){
//               console.log('滚动了');
               //2.1求出可视区域的高度
               vheight=$(window).height();
//               console.log(vheight);
               //2.2求出滚动的距离
               vscroll=$(window).scrollTop();
//               console.log(vscroll);
               //2.3求出当前元素的offsetTop
               voffset=$('#test').offset().top;
//               console.log(voffset);
               //2.4求出offset
               vDataWowOffset=vscroll+vheight-voffset;
               console.log(vDataWowOffset);
           })
        })
图示.png

自定义设置

  • boxClass:用户滚动时显示隐藏框的类名。
  • animateClass:触发CSS动画的类名(animate.css库默认为“animated”)
  • 偏移量:定义浏览器视口底部和隐藏框顶部之间的距离。 当用户
    滚动并到达这个距离时,隐藏的框被显示出来。
  • 手机:在移动设备上打开/关闭WOW.js。
  • 活着:检查页面上新的WOW元素。
$(function(){
 //1.初始化
 // new WOW().init();
var wow=new WOW({
boxClass:"wow",//动画元素的CSS类(默认类名wow)
animateClass:'animated',// 动画CSS类 (默认类名animated)
offset:0,
mobile:true// 是否在移动设备上执行动画 (默认是true)
 })

wow.init()
 })

他有个不好的地方就是动画只能做一次,做完这一次,下次即使在达到这个条件他就不会再做了,除非重新刷新页面.
有一个框架可以实现来回都可以实现动画效果,就是scrollReveal

各种class类名的动画效果:

wow rollIn 从左到右、顺时针滚动、透明度从100%变化至设定值
wow bounceIn 从原位置出现,由小变大超出设定值,再变小小于设定值,再回归设定值、透明度从100%变化至设定值
wow bounceInUp 从下往上、窜上来以后会向上超出一部分然后弹回去、透明度为设定值不变
wow bounceInDown 从上往下、掉下来以后会向下超出一部分然后弹跳一下、透明度为设定值不变
wow bounceInLeft 从左往右、移过来以后会向右超出一部分然后往左弹一下、透明度为设定值不变
wow bounceInRight 从右往左、移过来以后会向左超出一部分然后往右弹一下、透明度为设定值不
wow slideInUp 从下往上、上来后固定到设定位置、透明度为设定值不变(up是从下往上)(如果元素在最下面,会撑开盒子高度)
wow slideInDown 从上往下、上来后固定到设定位置、透明度为设定值不变
wow slideInLeft 从左往右、上来后固定到设定位置、透明度为设定值不变(left却是从左往右)
wow slideInRight 从右往左、上来后固定到设定位置、透明度为设定值不变
wow lightSpeedIn 从右往左、头部先向右倾斜,又向左倾斜,最后变为原来的形状、透明度从100%变化至设定值
wow pulse 原位置放大一点点在缩小至原本大小、透明度为设定值不变(配合动画执行次数属性效果更佳)
wow flipInX 原位置后仰前栽、透明度从100%变化至设定值
wow flipInY 原位置左右旋动、透明度从100%变化至设定值
wow bounce 上下抖动、透明度为设定值不变(配合动画执行次数和动画持续时间属性可以实现剧烈抖动亦或是慢慢抖)
wow shake 左右抖动、透明度为设定值不变(配合动画执行次数和动画持续时间属性可以实现剧烈抖动亦或是慢慢抖)
wow swing 从右往左、头部先向右倾斜,又向左倾斜,最后变为原来的形状、透明度为设定值不变
wow bounceInU 原位置不变、直接从不显示到显示(无过过渡效果)
wow wobble 原位置不变、类似于一个人站在那左右晃头、透明度为设定值不变

参考地址1:https://www.jianshu.com/p/19e70670b218
参考地址2:https://www.cnblogs.com/yangjunfei/p/6746926.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 229,963评论 6 542
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 99,348评论 3 429
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 178,083评论 0 383
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 63,706评论 1 317
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 72,442评论 6 412
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 55,802评论 1 328
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 43,795评论 3 446
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 42,983评论 0 290
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 49,542评论 1 335
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 41,287评论 3 358
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 43,486评论 1 374
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 39,030评论 5 363
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 44,710评论 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 35,116评论 0 28
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 36,412评论 1 294
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 52,224评论 3 398
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 48,462评论 2 378

推荐阅读更多精彩内容

  • 框架一 :: Animate.css Animate.css是一个css动画样式库,可以减少我们的开发时间.它预设...
    西巴撸阅读 2,651评论 0 5
  • 本文属xxKarina原创,转载请注明个人博客地址:https://xxkarina.github.io/ 前端涉...
    xxKarina阅读 3,363评论 0 5
  • 前言: 随着HTML5规范的不断完善,围绕着这一生态有很多实用的框架,极大的提高了我们的开发效率,常见的框架代表有...
    秒签T阅读 352评论 0 0
  • 蓝色的是天,黄色的是太阳,绿色的是树,黑色的土。 烟蒙蒙的炊烟。树在脚边,我做在地上看树下的蚂蚁。 一只蜻蜓,两...
    神的孩子吗阅读 275评论 0 0
  • 最近一直觉得自己在很多方面做的远远不够~ 在工作上,我目前的情况是比之前要沉稳与踏实了许多。 昨天听到一万小时理论...
    他说他的不说阅读 105评论 0 0