我使用Greensock javascript创建了一个循环补间,我使用函数循环它,也许这不是最好的循环方式,如果你知道更好的方法请建议,但基本上当我试图杀死使用此方法的补间,它不起作用。
我的代码:
var dvdTween;
function playDVD()
{
dvdTween = TweenMax.to($("#bigDVD"), 4, {css:{rotation:+1440, transformOrigin:"150px 150px"},ease:Expo.easeNone, delay:7, onComplete:playDVD});
}
///稍后在我调用的函数中
dvdTween.kill(); /// but this does nothing.
同样,可能有一种更好的方法来循环补间,这可能是我的问题,但是现在这个补间在我“杀死”它之后继续调用该函数。
感谢您的提示和帮助。
答案 0 :(得分:6)
您的代码应该确实有用 - 我很乐意看到一组示例文件显示它无法正常工作。我想知道你是否遇到了范围问题 - 你确定“dvdTween”在你调用它的上下文中引用了补间吗?尝试添加onCompleteScope:这是你的补间。
另外两个提示:
1)您可以通过设置repeat:-1来无限循环TweenMax,如:
TweenMax.to($("#bigDVD"), 4, {css:{rotation:1440}, repeat:-1});
2)你可以使用TweenMax.killTweensOf()来杀死特定对象的所有补间:
TweenMax.killTweensOf($("#bigDVD"));