這裏是場景: 我正在創建一個信息圖交互式動畫,它允許用戶虛擬設置三腳架,與虛擬相機交互等。我需要當箭頭指向用戶應該點擊的位置時停止的時間線。在時間軸應該恢復在點擊三腳架(一個影片剪輯)(三腳架也動畫,然後將視圖切換到第一人稱相機附帶)播放。目前,動畫只是永遠播放,沒有停止任何用戶交互。這裏是我的createJS到目前爲止的代碼:提前,StackOverflow的和他們有關聯的超級程序員的專業知識如何執行gotoAndPlay()和stop()的createJS等效
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>CreateJS export from birdsofprey-anim9c</title>
<script src="http://code.createjs.com/easeljs-0.6.0.min.js"></script>
<script src="http://code.createjs.com/tweenjs-0.4.0.min.js"></script>
<script src="http://code.createjs.com/movieclip-0.6.0.min.js"></script>
<script src="http://code.createjs.com/preloadjs-0.3.0.min.js"></script>
<script src="birdsofprey-anim9c.js"></script>
<script>
var canvas, stage, exportRoot;
function init() {
canvas = document.getElementById("canvas");
images = images||{};
var manifest = [
{src:"images/Bitmap1.png", id:"Bitmap1"},
{src:"images/Bitmap2.png", id:"Bitmap2"},
{src:"images/Scene_1.jpg", id:"Scene_1"}
];
var loader = new createjs.LoadQueue(false);
loader.addEventListener("fileload", handleFileLoad);
loader.addEventListener("complete", handleComplete);
loader.loadManifest(manifest);
}
function handleFileLoad(evt) {
if (evt.item.type == "image") { images[evt.item.id] = evt.result; }
}
function handleComplete() {
exportRoot = new lib.birdsofpreyanim11a();
stage = new createjs.Stage(canvas);
stage.addChild(exportRoot);
tripodleg = new lib.LEFT_LEG_MC;
stage.addChild(tripodleg);
stage.update();
createjs.Ticker.setFPS(24);
createjs.Ticker.addEventListener("tick",f);
function f(e){
//var t=this;
//t.stop();
//exportRoot.stop();
var delay = 4000;
var startTime=createjs.Ticker.getTime();
createjs.Ticker.getMeasuredFPS();
if(createjs.Ticker.getMeasuredFPS == 6){
exportRoot.stop();
tripodleg.onclick = function(){
exportRoot.gotoAndPlay(90);
}
//exportRoot.gotoAndPlay(90);
createjs.Ticker.removeEventListener("tick",f);
}
}
createjs.Ticker.addEventListener("tick", stage);
}
</script>
</head>
<body onload="init();" style="background-color:#D4D4D4">
<canvas id="canvas" width="550" height="540" style="background-
color:#ffffff"></canvas>
</body>
</html>
謝謝! -qs [編輯]經由的addChild這次加入我的三腳架的MovieClip到該級的一個實例再次更新我的代碼();並經由exportRoot.stop停止時間軸(); exportRoot沒有停止,任何線索?提前致謝。
您提到:「沒有滴答屬性,只有」滴答「事件。」是的,這也是我所懷疑的,謝謝你的更新。 – querystring
你說:「你要找的點擊處理程序時的主剪輯達到30添加?」 ...究竟。我希望整個時間線在第30幀時停止,而不是時間軸上的MC。我看了一下Ticker.setPause(true)的例子,但它正好在我頭上。也許設置一個FPS的變量告訴Ticker同步到時間軸的幀速率,對吧?感謝您爲這些錯誤提供幫助,請讓我知道如何使stop();我試圖在第30幀創建行動。再次,任何幫助將不勝感激,感謝一百萬。-qs。 – querystring
更新我的代碼以反映Lanny的建議。 -qs – querystring