2014-01-27 51 views
0

我有一系列彩色DIV,當您向下滾動頁面時,我試圖淡入淡出。SuperScrollOrama和TweenMax淡入淡出滾動

我對div的設置很簡單:

<div class="wrapper"> 
     <div id="content" class="clearfix"> 
      <div class="box alpha"></div> 
      <div class="box beta"></div> 
      <div class="box gamma last"></div> 
      <div class="box delta"></div> 
      <div class="box epsilon"></div> 
      <div class="box zeta last"></div> 
     </div> 
    </div> 

這裏是我的superscrollorama/tweenmax腳本:

var controller = $.superscrollorama(); 
controller.addTween('.box.alpha', TweenMax.from($('.box.alpha'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 400); 
controller.addTween('.box.alpha', TweenMax.to($('.box.alpha'), 1, {css:{opacity: .2}}), 1600); 
controller.addTween('.box.beta', TweenMax.from($('.box.beta'), 1, {css:{opacity: .2}}), 1600); 
controller.addTween('.box.beta', TweenMax.to($('.box.beta'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 2400); 
controller.addTween('.box.gamma', TweenMax.from($('.box.gamma'), 1, {css:{opacity: .2}}), 2400); 
controller.addTween('.box.gamma', TweenMax.to($('.box.gamma'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 3200); 
controller.addTween('.box.delta', TweenMax.from($('.box.delta'), 1, {css:{opacity: .2}}), 3200); 
controller.addTween('.box.delta', TweenMax.to($('.box.delta'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 4000); 
controller.addTween('.box.epsilon', TweenMax.from($('.box.epsilon'), 1, {css:{opacity: .2}}), 4000); 
controller.addTween('.box.epsilon', TweenMax.to($('.box.epsilon'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 4800); 
controller.addTween('.box.zeta', TweenMax.from($('.box.zeta'), 1, {css:{opacity: .2}}), 4800); 
controller.addTween('.box.zeta', TweenMax.to($('.box.zeta'), 1, {css:{opacity: 1} ,ease:Quad.easeInOut}), 5600); 

一切都消失在你向下滾動頁面,但我希望有一個框當下一個盒子淡入淡出時,我可能做錯了,但我找不到很多文檔。

下面是我在做什麼:http://emptywalrus.com/scroll/

回答

0

你需要創建一個Timeline。下面是我剛剛在我的一個項目中做過的同樣事情的示例:

controller.addTween(
    '#the-problem', 
    (new TimelineLite()) 
     .append([ 
      TweenMax.fromTo($('#the-problem .animation-heading'), 1, 
       { delay: 0.3, css: { right: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.3, css: { right: 0 }, ease: Expo.easeInOut }), 
      TweenMax.fromTo($('#the-problem .animation-text'), 1, 
       { delay: 0.1, css: { right: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.1, css: { right: 0 }, ease: Expo.easeInOut }), 
      TweenMax.fromTo($('#the-problem .animation-image'), 1, 
       { delay: 0.1, css: { left: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.1, css: { left: 0 }, ease: Expo.easeInOut }) 
     ]), 700, -400); 

controller.addTween(
    '#the-solution', 
    (new TimelineLite()) 
     .append([ 
      TweenMax.fromTo($('#the-solution .animation-heading'), 1, 
       { delay: 0.3, css: { left: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.3, css: { left: 0 }, ease: Expo.easeInOut }), 
      TweenMax.fromTo($('#the-solution .animation-text'), 1, 
       { delay: 0.1, css: { left: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.1, css: { left: 0 }, ease: Expo.easeInOut }), 
      TweenMax.fromTo($('#the-solution .animation-image'), 1, 
       { delay: 0.1, css: { right: -1500 }, ease: Expo.easeInOut }, 
       { delay: 0.1, css: { right: 0 }, ease: Expo.easeInOut }) 
     ]), 700, -400);