Flash 和 _root 以及级别 - 将 SWF 加载到另一个 SWF
我正在将旧的公式计算器加载到我正在开发的新项目中;非常简单...
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 在某个地方混淆了它,但我无法弄清楚。非常感谢。
I'm loading an old formula calculator into a new project I'm working on; pretty simple...
this.createEmptyMovieClip("calc_mc", 0);
loadMovie("calc.swf", calc_mc);
Everything's fine...But, these commands clear the 'hints' in the form fields in the original 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 works fine on it's own, but once it's loaded into the new project, the hints dont clear. I know _root is garbling it somewhere, but I can't figure it out. Much appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一旦加载到新影片中,
_root
就会引用主影片根时间线,因此您的 _root 命令在加载的影片上会失败。您应该用
_parent
..... 符号更改它们。例如,如果您的 _root 命令是 2 级嵌套在加载的电影中,您可以参考 root
作为
_parent._parent
或者您可以使用这个丑陋的解决方案:
使用这个解决方案,独立的 swf 将不再工作。
Once loaded in a new movie,
_root
references the Main Movie root timeline, so your _root commands fails on the loaded movie.You should change them in a
_parent
..... notation.For example if your _root command is 2 level nested in the loaded movie, you can refer to root
as
_parent._parent
or you can use this ugly solution:
with this one the standalone swf will not work anymore.