canvas.removeChild(bitmapText)无效

时间:2018-01-10 17:16:08

标签: canvas bitmap html5-canvas createjs

我正在创建一个动画,我想删除一个位图并将其替换为新位图。我能够在画布上添加新的位图,但我似乎无法删除旧的位图。我的代码如下所示:

var canvas;
var bitmapText;

// onload call
function init() {
    canvas = new createjs.Stage("canvas");
    bitmapText = bitmapTextInit(); // adds bitmap text to canvas
    counter = 0;
    canvas.update();
}

function bitmapTextInit() {
    var bitmapText = new createjs.Bitmap("bitmapText.png");
    canvas.addChild(balloonsText);
}

function removeBitmapText() {
    canvas.removeChild(bitmapText);
}

function addNewtext() {
    var newText = new createjs.Bitmap("newText.png");
}

我有一个函数,如果== true它会删除旧图像并添加新图像以及播放音乐。

function compareAndPlayInit() {
if (counter == 3) {
    console.log("true");
    removeBitMapText();
    addNewText();
    createjs.Sound.play(music);
}

当计数器达到3时,它会添加新的位图文本(addNewBitmapText();)并播放音乐(createjs.Sound.play(music);)但不删除旧的位图文本(removeBitMapText(); )。

1 个答案:

答案 0 :(得分:0)

删除var中的var bitmapText(在bitmapTextInit()中),您正在创建一个新变量。