我在ScrollMagic上遇到问题。它根本没有对触发元素做出响应。下面,我将提供代码:
CSS:
.container {
height: 3000px;
}
#trigger {
position: relative;
top: 300px;
}
.katrori {
opacity: 0;
position:relative;
top:300px;
background-color:#eee;
height:400px;
padding:25px;
font-family:Arial, Sans-serif;
font-weight:bold;
}
和JS:
$(document).ready(function($)) {
var controller = new ScrollMagic();
var tween = TweenMax.to(".katrori", 0.5, {opacity: 1, backgroundColor: "#1d1d1d"})
var scene = new ScrollScene({triggerElement: "#trigger"})
.setTween(tween)
.addTo(controller);
});
我想念什么?
最佳答案
您的JS
主要有两个错误。
parenthesis
(“)”)过多。$(document).ready(function($)) {
^^ --> one of those
现在,初始化
container
和scene
的正确方法是:var container = new ScrollMagic.Container({...});
var scene = new ScrollMagic.Scene({...});
当您应用这些更改时,
code
的工作示例可能类似于this:$(document).ready(function ($) {
var controller = new ScrollMagic.Controller(),
tween = TweenMax.to(".katrori", 0.5, {opacity: 1, backgroundColor: "#1d1d1d"}),
scene = new ScrollMagic.Scene({triggerElement: "#trigger"});
scene
.setTween(tween)
.addTo(controller);
});
您可能还想看看他们的examples。
编辑
补充项目符号 2:
在
ScrollMagic
版本 1 中,通过以下方式在脚本中将container
和scene
初始化为:var controller = new ScrollMagic({ *global options applying to all scenes added*});
var scene = new ScrollScene({ *options for the scene* })
在 2 版本中,这种方式是通过以下方式完成的:
var container = new ScrollMagic.Container({...});
var scene = new ScrollMagic.Scene({...});
这就是为什么您的脚本以前无法使用的原因。
styling
仍在CSS
中完成。