用wow.js实现页面滚动时触发animate.css动画特效

    很高兴在2017/10/14发表了自己的第一个博客随笔,不管你们怎么想,我自己觉得逼格瞬间高了起来。哈哈哈,哈撒尅。

 

有时候项目需要一些动画来提升用户体验,吸引用户注意力。这时wow是个不错的选择

wow.js依赖animate.css,不需要jquery;animate.css是纯css动画

 

官网:http://mynameismatthieu.com/WOW/

建议去官网一看

bootstrap CDN服务:http://www.bootcdn.cn/wow/

 

当您滚动时显示动画。非常Animate.css朋友:-) 
轻松自定义动画设置:样式,延迟,长度,偏移量,迭代...

下载地址:https://github.com/matthieua/WOW

 

使用步骤:

1、引入animate.css

  <link rel="stylesheet" href="css/animate.css" />

2、引入wow.js

  <script src="js/wow.min.js" type="text/javascript" charset="utf-8"></script>

3、启动new WOW().init();

  <script type="text/javascript">
    new WOW().init();
  </script>

4、在需要动画的标签上面添加class      注:wow必须加在动画类名前面

  <div class="wow bounce">
    <p>完全契合0基础的学员</p>
    <p>完全契合0基础的学员</p>
  </div>

*动画效果展示网站:https://daneden.github.io/animate.css/

5.高级选项   注:为了更好的控制动画效果(属性)

  <div class="wow bounce "  data-wow-delay="1.5s"  data-wow-iteration:"1">
    <p>完全契合0基础的学员</p>
    <p>完全契合0基础的学员</p>
  </div>

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

 

上面的已经可以实现动画效果了,但是还有个问题,这些动画会在加载页面时一股脑触发,我们往往想要的是滚动到这里才开始触发。

我们可以使用自定义配置。

 

boxClass:用户滚动时显示隐藏框的类名。

animateClass:触发CSS动画的类名(animate.css库默认为“animated”)

偏移量:定义浏览器视口底部和隐藏框顶部之间的距离。
当用户滚动并到达这个距离时,隐藏的框被显示出来。

手机:在移动设备上打开/关闭WOW.js。

live:自动检查页面上的新WOW元素。

 

这时的JS代码:

  var wow = new WOW({
    boxClass: 'wow',
    animateClass: 'animated',
    offset: 0,
    mobile: true,
    live: true
  });
  wow.init();

 

配置如图:

 



有的网站采用全屏滚动的fullpage插件与wow相结合的方法,实现的效果比较酷炫。我们完全可以仿写。

但是使用fullpage.js下wow.js无效失效没动作

问题出在fullpage隐藏了滚动条,将滚动条开启即可,把scrollBar设置为true,代码如下
  $('#fullpage').fullpage({
  scrollBar:true;
  });
最后利用css将滚动条隐藏,将html添加overflowhidden,代码如下
  html{

    overflow:hidden;

  }

 第一次随笔就到这里,下次再见。

 

转载请保留出处,谢谢                       

 

posted @ 2017-10-14 14:38  SuperMeng  阅读(12272)  评论(0编辑  收藏  举报