2016-10-21 31 views
0

我使用ScrollMagic,下面的代码:ScrollMagic上输入不正常

var scene = new ScrollMagic.Scene({ 
    triggerElement: slides[i] 
     }) 
    .setPin(slides[i]) 
    .addIndicators() 
    .addTo(controller) 
    .triggerHook(0.10) 
    .on('enter', function(e){ 
     panel = $(e.target.triggerElement()).prop('id'); 
     $('.circle').removeClass('active'); 
     $('.circle.c-'+panel).addClass('active'); 
    }); 

的上输入功能向下滚动时,但不能向上滚动时完美的作品。 根据官方文件,这两种方式都有效,我可能会做错什么?

回答

0

你应该 “离开” 功能编写,

var scene = new ScrollMagic.Scene({ 
triggerElement: slides[i] 
    }) 
.setPin(slides[i]) 
.addIndicators() 
.addTo(controller) 
.triggerHook(0.10) 
.on('enter', function(e){ 
    panel = $(e.target.triggerElement()).prop('id'); 
    $('.circle').removeClass('active'); 
    $('.circle.c-'+panel).addClass('active'); 
}) 
.on('leave', function(e){ 
    // Your up scroll code here. 
}); 
0

您需要设置reversetrue像这样:

var scene = new ScrollMagic.Scene({ 
    triggerElement: slides[i] 
     }) 
    .setPin(slides[i]) 
    .addIndicators() 
    .addTo(controller) 
    .triggerHook(0.10) 
    .reverse(true) 
    .on('enter', function(e){ 
     panel = $(e.target.triggerElement()).prop('id'); 
     $('.circle').removeClass('active'); 
     $('.circle.c-'+panel).addClass('active'); 
    });