javascript 动画在视口中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 动画在视口中相关的知识,希望对你有一定的参考价值。

//http://jsfiddle.net/RokoCB/tw6g2oeu/7/ 

(function($, win) {
          $.fn.inViewport = function(cb) {
              return this.each(function(i,el){
                  function visPx(){
                      var H = $(this).height(),
                          r = el.getBoundingClientRect(), t=r.top, b=r.bottom;
                      return cb.call(el, Math.max(0, t>0? H-t : (b<H?b:H)));
                  } visPx();
                  $(win).on("resize scroll", visPx);
              });
          };
      }(jQuery, window));

      $(".c-arrow-down-anim").inViewport(function(px){
          if(px) $(this).find('i').addClass("fadeInLeft").delay( 5000 ) ;
      });
      
      
      
      // CSS
      
      // CSS animations https://www.theappguruz.com/tag-tools/web/CSSAnimations/
      .c-arrow-down-anim {
  @include font-size(2);
  text-align: center;
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-300%, 0, 0);
    transform: translate3d(-300%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-300%, 0, 0);
    transform: translate3d(-300%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

以上是关于javascript 动画在视口中的主要内容,如果未能解决你的问题,请参考以下文章

CSS3-动画元素如果在视口中可见(页面滚动)

如果元素在视口中 - 停止滚动动画

3D Max 从动画帧生成对象,将帧复制到视口

html 视口中的动画

html 视口中的动画

无论如何在javascript中操作视口?