如何播放 MovieClip x 次
How to play a MovieClip x times
EaselJS 模块中的 MovieClip class 有一个循环 属性 可以设置为 true 或 false,使影片剪辑无限播放或只播放一次。 http://www.createjs.com/docs/easeljs/classes/MovieClip.html
我需要将一个影片剪辑(横幅广告)播放三遍。怎么做到的?
这是初始化函数:
<script>
var canvas, stage, exportRoot;
function init() {
// --- write your JS code here ---
canvas = document.getElementById("canvas");
images = images||{};
var loader = new createjs.LoadQueue(false);
loader.addEventListener("fileload", handleFileLoad);
loader.addEventListener("complete", handleComplete);
loader.loadManifest(lib.properties.manifest);
}
function handleFileLoad(evt) {
if (evt.item.type == "image") { images[evt.item.id] = evt.result; }
}
function handleComplete(evt) {
exportRoot = new lib.banner_728x90();
stage = new createjs.Stage(canvas);
stage.addChild(exportRoot);
stage.update();
stage.enableMouseOver();
createjs.Ticker.setFPS(lib.properties.fps);
createjs.Ticker.addEventListener("tick", stage);
}
</script>
目前不支持循环计数,也不支持来自 MovieClip 的任何事件指示动画何时结束。后者不是一个坏主意,请随时在 GitHub.
中记录错误
您可以使用的一种解决方案是从 Animate 中的时间轴脚本分派一些自定义事件:
this.dispatchEvent("walkend");
那你就可以监听事件,自己处理了。
var loopCount = 0;
exportRoot.myClip.on("walkend", function(event) {
loopCount++;
if (loopCount > 2) {
doSomething();
event.remove(); // No longer get this event.
}
});
希望对您有所帮助。
EaselJS 模块中的 MovieClip class 有一个循环 属性 可以设置为 true 或 false,使影片剪辑无限播放或只播放一次。 http://www.createjs.com/docs/easeljs/classes/MovieClip.html
我需要将一个影片剪辑(横幅广告)播放三遍。怎么做到的?
这是初始化函数:
<script>
var canvas, stage, exportRoot;
function init() {
// --- write your JS code here ---
canvas = document.getElementById("canvas");
images = images||{};
var loader = new createjs.LoadQueue(false);
loader.addEventListener("fileload", handleFileLoad);
loader.addEventListener("complete", handleComplete);
loader.loadManifest(lib.properties.manifest);
}
function handleFileLoad(evt) {
if (evt.item.type == "image") { images[evt.item.id] = evt.result; }
}
function handleComplete(evt) {
exportRoot = new lib.banner_728x90();
stage = new createjs.Stage(canvas);
stage.addChild(exportRoot);
stage.update();
stage.enableMouseOver();
createjs.Ticker.setFPS(lib.properties.fps);
createjs.Ticker.addEventListener("tick", stage);
}
</script>
目前不支持循环计数,也不支持来自 MovieClip 的任何事件指示动画何时结束。后者不是一个坏主意,请随时在 GitHub.
中记录错误您可以使用的一种解决方案是从 Animate 中的时间轴脚本分派一些自定义事件:
this.dispatchEvent("walkend");
那你就可以监听事件,自己处理了。
var loopCount = 0;
exportRoot.myClip.on("walkend", function(event) {
loopCount++;
if (loopCount > 2) {
doSomething();
event.remove(); // No longer get this event.
}
});
希望对您有所帮助。