[AS]使用MovieClipLoader时何时指定_lockroot属性
[问题]
今天做演示光盘,需要把以前的很多文件组合在一起用,需要加链接跳转,为了节省时间,就单做了一个放置皮肤功能按钮的文件,文件名为menu.swf,在该文件里指定某个MC用来放置加载进来的文件,加载单个文件使用的MovieClipLoader类。但是,由于原来的文件是很久以前做的,代码里使用了很多_root,而却未指定_lockroot=true.因此,把它们加载到皮肤文件里并不能正常工作。解决办法很简单的一个就是在加载时指定_lockroot属性,但是究竟应该在何时指定才正确。
[实验]
我曾经分别在加载监视对象的onLoadStart,onLoadComplete和onLoadInit中指定target_mc的_lockroot属性,发现前两个指定没有用,在onLoadInit中指定时有时有用,有时没有用(具体的说是当第一次打开menu.swf,它第一次加载的其他文件的_lockroot没有起作用,再点其他按钮加载其他文件时,起作用了),这样肯定是不行的。
然后在调用loadClip前指定_lockroot属性,设置生效了。OK,这就是我想要的效果。

1月 10th, 2008 at 10:57 上午
非常感谢您的经验。我也遇到了你同样的问题。
今天在做一个演示flash,因为考虑修改方便,所以用模块化的方式来进行,用main引入多个swf文件。但遇到了gotoandplay不会如我所想的跳转。看到您的博客后心里清楚了很多。非常感谢