【问题标题】:For Loop MovieClip Grid not showing on stageFor Loop MovieClip Grid 未在舞台上显示
【发布时间】:2013-11-21 21:01:24
【问题描述】:

所以我是一个新手,显然应该花时间在 tuts 上,但我正在寻找一个快速的答案。基本上,我已经用 AS3 创建了一个电影剪辑网格。当我“预览”闪存(作为闪存或 HTML)时,它显示得很好。成功。然而,舞台仍然是空的。

Q1) 当我使用 AS3 动态“绘制”mc 的网格时,舞台是否会保持空白?或者我是否缺少让这个婴儿出现在舞台上的代码?

Q2)我已经设法使用 alpha 使 MC 在悬停时“淡出” - 但我想让它们在悬停时改变颜色(变为红色)。我到处搜索,似乎找不到合适的脚本。

这是我的代码:

var stage = new createjs.Stage("canvas");
 var image = new createjs.Bitmap("images/square.png");
 stage.addChild(image);
 createjs.Ticker.addEventListener("tick", handleTick);
 function handleTick(event) {
     image.x += 10;
     stage.update();
 }

var x0:Number = 0;
var y0:Number = 0;
var nt:Number = 72;
var nc = 10;
var vd:Number = 12;
var hd:Number = 12;
for (var i = 1; i <= nt; i++) {
    var mc = this.attachMovie("square", "square" + i, i);
    var aprox = Math.floor((i - 1) / nc);
    mc._x = x0 + hd * ((i - aprox * nc) - 1);
    mc._y = y0 + aprox * vd;
    mc.useHandCursor = true;
    // fade in
    mc.onRollOver = function()
    {

        this.onEnterFrame = function()
        {
            if (this._alpha > 0) {
                this._alpha -= 10;
            } else {
                this._alpha = 0;
                delete this.onEnterFrame;
            }
        };
    };
    // fade out
    mc.onRollOut = function()
    {
        this.onEnterFrame = function()
        {
            if (this._alpha < 100) {
                this._alpha += 10;
            } else {
                this._alpha = 100;
                delete this.onEnterFrame;
            }
        };
    };

}

提前致谢 - 对不起,我是菜鸟。

【问题讨论】:

    标签: javascript actionscript-3 flash


    【解决方案1】:

    这永远不会奏效。 1/3 的代码在 AS3 中,2/3 在 AS2 中。考虑到您没有遇到任何错误,我假设您将其导出为 AS2。

    【讨论】:

      猜你喜欢
      • 2013-11-25
      • 2014-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-20
      相关资源
      最近更新 更多