【问题标题】:Adding Children to Container() EaselJS将子项添加到 Container() EaselJS
【发布时间】:2015-02-05 20:25:06
【问题描述】:

我正在阅读一些教程并尝试使用 javascript,尤其是 EaselJS。我想创建一些将图像和文本保存在一起的容器。但是当我尝试将文本和图像添加到容器时,出现以下错误:“Uncaught TypeError: undefined is not a function”

    function init() {
        stage = new createjs.Stage("demoCanvas");


        for(var i=0; i<container.length; i++) { //looping through creation of objects
            container[i] = new createjs.Container();
            container[i].x = Math.floor(Math.random() * (760 - 40));
            img[i] = new createjs.Bitmap (" choc.png" );
            container.addChild(img[i]);
            txt[i] = new createjs.Text(i, "bold 16px Courier", "#fff");
            txt[i].textAlign = "center";
            txt[i].y = 50;
            container.addChild(txt[i]);
            stage.addChild(container[i]);

        }

错误在 container.addChild(img[i]); 行。

【问题讨论】:

  • 我没有使用 EaselJS,但我看到你的文件名开头有一个空格:`choc.png`。这会有所不同吗?
  • 舞台在哪里更新?
  • 空间并没有真正的区别,我在 for 循环之后用容器更新舞台。我似乎无法解决这个问题,我已经尝试了所有方法。

标签: javascript containers easeljs typeerror


【解决方案1】:

您正试图在您的 container 数组上调用 addChild,而不是在 Container 实例上。我很确定这就是您的意图:

container[i].addChild(img[i]);

这就是命名很重要的原因。考虑使用containerscontainerList 而不是container 作为您的数组名称,以明确它是一个集合。

【讨论】:

    猜你喜欢
    • 2017-03-21
    • 1970-01-01
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 2013-11-13
    • 2012-07-10
    相关资源
    最近更新 更多