javascript 停止动画不起作用
javascript stop animation not working
Javascript :
var canvas, stage, exportRoot;
function init() {
canvas = document.getElementById("canvas");
exportRoot = new lib.son();
stage = new createjs.Stage(canvas);
stage.addChild(exportRoot);
stage.update();
createjs.Ticker.setFPS(lib.properties.fps);
createjs.Ticker.addEventListener("tick", stage);
createjs.Ticker.setPaused(true); // Here should be stopped
}
Html:
<div id="loadingPanelDiv" style="position: fixed; z-index: 11111; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(255,255,255,1); display: none;">
<canvas id="canvas" width="600" height="500" style="position: absolute; left: 50%; top: 50%; margin-left: -300px; margin-top: -250px;"></canvas>
</div>
问题:
当我点击按钮时 init() 函数开始 运行。
我用
createjs.Ticker.setPaused(真);
为了停止 animation.However 它没有停止动画而且仍然 运行 animation.How 我可以 停止 动画吗?
我完全错过了。
我们将不胜感激。
谢谢。
setPaused()
方法只改变了Ticker上的paused值,但还是派发了。这可能会在 EaselJS 的未来版本中改变,但目前暂停动画的最佳方法是从舞台上删除 "tick" 侦听器。
// Pause
createjs.Ticker.removeEventListener("tick", stage);
// Resume
createjs.Ticker.addEventListener("tick", stage);
为了更容易控制,您可以这样做:
// Add the listener to your own function instead of stage
createjs.Ticker.addEventListener("tick", tick);
var paused = false;
function tick(event) {
if (!paused) {
stage.update(event);
}
}
// Then to toggle it, just change the "paused" property.
function handleButtonClick(event) {
paused = !paused; // toggle on click
}
Javascript :
var canvas, stage, exportRoot;
function init() {
canvas = document.getElementById("canvas");
exportRoot = new lib.son();
stage = new createjs.Stage(canvas);
stage.addChild(exportRoot);
stage.update();
createjs.Ticker.setFPS(lib.properties.fps);
createjs.Ticker.addEventListener("tick", stage);
createjs.Ticker.setPaused(true); // Here should be stopped
}
Html:
<div id="loadingPanelDiv" style="position: fixed; z-index: 11111; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(255,255,255,1); display: none;">
<canvas id="canvas" width="600" height="500" style="position: absolute; left: 50%; top: 50%; margin-left: -300px; margin-top: -250px;"></canvas>
</div>
问题:
当我点击按钮时 init() 函数开始 运行。
我用 createjs.Ticker.setPaused(真);
为了停止 animation.However 它没有停止动画而且仍然 运行 animation.How 我可以 停止 动画吗?
我完全错过了。
我们将不胜感激。
谢谢。
setPaused()
方法只改变了Ticker上的paused值,但还是派发了。这可能会在 EaselJS 的未来版本中改变,但目前暂停动画的最佳方法是从舞台上删除 "tick" 侦听器。
// Pause
createjs.Ticker.removeEventListener("tick", stage);
// Resume
createjs.Ticker.addEventListener("tick", stage);
为了更容易控制,您可以这样做:
// Add the listener to your own function instead of stage
createjs.Ticker.addEventListener("tick", tick);
var paused = false;
function tick(event) {
if (!paused) {
stage.update(event);
}
}
// Then to toggle it, just change the "paused" property.
function handleButtonClick(event) {
paused = !paused; // toggle on click
}