我有一个淡入淡出的MovieClip然后淡出。我想在这个影片剪辑中找到中间标记并暂停它。但是在EaselJS中,我找不到任何方法来获取影片剪辑的当前帧位置。这可能吗?
我想做以下事情:
canvas = document.getElementById("introCanvas");
exportRoot = new lib.MyMovieClip();
exportRoot.onTick = function () {
//get the mc's length in frames
//get the current frame position
//if current frame postion == mc's lenght / 2
//then pause movie clip
};
任何人都可以就如何完成上述工作向我提出一些建议或想法吗?
谢谢!
答案 0 :(得分:0)
阅读完文档后,似乎会自动分配TweenJS Timeline
来管理动画中的更改,它看起来不像我们在flash中看到的任何实际帧。
如果您查看可能的docs for TweenJS Timeline,可以使用duration
属性,如文档所述:
只读属性,指定此时间轴的总持续时间(以毫秒为单位)(如果useTicks为true,则为ticks)。修改时间轴时,通常会自动更新此值。有关更多信息,请参阅updateDuration。
因此,如果您获得持续时间并除以2,或乘以0.5;)那么您可以找到动画的中间点。尝试在onTick方法中使用它来查看它是否有效。
答案 1 :(得分:0)
我总是这样做......
(movieclip.timeline.position)%movieclip.timeline.duration
或者另一种方式......
var tl = movieclip.timeline;
var d = timeline.duration;
(tl.position)%d
你必须得到movieclip的时间轴的位置&持续时间,并添加%。这将获得movieclip的当前帧。