Flash和_root和级别 - 将SWF加载到另一个SWF中

时间:2011-10-05 17:28:56

标签: flash root levels

我正在将一个旧的公式计算器加载到我正在研究的新项目中;非常简单...

this.createEmptyMovieClip("calc_mc", 0);
loadMovie("calc.swf", calc_mc);

一切都很好......但是,这些命令会清除原始calc.swf中表单字段中的“提示”

if (my_txt != null) {
    var mc = my_txt._name + "Hint";
    if (my_txt.length > 0) {
        _root[mc]._visible = false;
    } else {
        _root[mc]._visible = true;
    }
}
_root[this._name + "Hint"]._visible = false;

SWF在它自己的工作正常,但一旦它被加载到新项目,提示不明确。我知道_root在某个地方捣乱它,但我无法弄明白。非常感激。

1 个答案:

答案 0 :(得分:1)

加载到新电影后,_root会引用主电影根时间轴,因此_root命令会在加载的电影上失败。

您应该以{{1​​}} .....符号更改它们。 例如,如果您的_root命令在加载的影片中嵌套了2级,则可以引用root 作为_parent

或者您可以使用这个丑陋的解决方案:

_parent._parent

使用这个独立的swf将不再起作用。