User Guide

MovieClip._lockroot 543
MovieClip._lockroot
Availability
Flash Player 7.
Usage
my_mc._lockroot:Boolean
Description
Property; specifies what _root refers to when a SWF file is loaded into a movie clip. The
_lockroot property is undefined by default. You can set this property within the SWF file that
is being loaded or in the handler that is loading the movie clip.
For example, suppose you have a document called Games.fla that lets a user choose a game to
play, and loads the game (for example, Chess.swf) into the
game_mc movie clip. You want to make
sure that, if
_root is used in Chess.swf, it still refers to _root in Chess.swf after being loaded into
Games.swf. If you have access to Chess.fla and publish it to Flash Player 7 or later, you can add
this statement to Chess.fla on the main Timeline:
this._lockroot = true;
If you dont have access to Chess.fla (for example, if you are loading Chess.swf from someone
elses site into
chess_mc), you can set its _lockroot property when you load it, as shown below.
In this case, Chess.swf can be published for any version of Flash Player, as long as Games.swf is
published for Flash Player 7 or later. Place the following ActionScript on the main Timeline:
chess_mc._lockroot = true;
When calling loadMovie(), set the MovieClip._lockroot property to true in the loader
movie, as shown in the following code. If you dont set
_lockroot to true in the loader movie,
the loader has access only to its own library, but not the library in the loaded movie:
myMovieClip._lockroot = true;
Example
In the following example, lockroot.fla has _lockroot applied to the main SWF file. If it is loaded
into another FLA document,
_root will always refer to the scope of lockroot.swf, which helps
prevent conflicts. Place the following ActionScript on the main Timeline of lockroot.fla.
this._lockroot = true;
_root.myVar = 1;
_root.myOtherVar = 2;
trace("from lockroot.swf");
for (i in _root) {
trace(" "+i+" -> "+_root[i]);
}
trace("");
Which traces the following information:
from lockroot.swf
myOtherVar -> 2
myVar -> 1