3

我有一个淡入然后淡出的电影剪辑。我想在这个影片剪辑中找到中途标记并暂停它。但是在 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


        };

谁能为我如何完成上述工作提供一些建议或想法?

谢谢!

4

2 回答 2

0

通读文档后,似乎TweenJS Timeline自动分配了a来管理动画中的变化,看起来不像我们在flash中看到的任何实际帧。

如果您查看TweenJS Timeline 的文档,则可以使用该duration属性,如文档所述:

只读属性,以毫秒为单位指定此时间线的总持续时间(如果 useTicks 为 true,则为刻度)。此值通常会在您修改时间线时自动更新。有关详细信息,请参阅 updateDuration。

因此,如果您获得持续时间并除以 2,或乘以 0.5 ;) 那么您可以找出动画的中点。尝试在你的 onTick 方法中使用它,看看它是否有效。

于 2012-05-26T11:43:27.707 回答
0

我总是这样做...

(movieclip.timeline.position)%movieclip.timeline.duration

或者其他方式...

var tl = movieclip.timeline;
var d = timeline.duration;

(tl.position)%d

您必须获取影片剪辑的时间轴的位置和持续时间,并添加一个 %。这将获得影片剪辑的当前帧。

于 2013-05-22T15:56:05.610 回答