For example: _this()stop; or _this.parent.gotoAndPlay
this()stop; or this.parent.gotoAndPlay
The two alerts will show different values. Using Bind:
will show the same value. But, using bind everywhere to keep the level being the same may not always be what you want, and so the other way of using a variable would do:
var _this = this;
would show the same value. As 'this' is a reserved word it can't be used as a variable, and a common variable to use is _this. I sometimes use 'self' too, like:
var self = this;
Then I can refer to self when I'm trying to do something on the main timeline.
Another approach that is useful is to stash your variables in the browser window level. You could say:
window.tl = this;
and then everywhere in your entire hierarchy you could get back to the main timeline by addressing window.tl.
Polluting the global scope with variables is not great practice, BTW. At the very least I'd recommend stashing any Animate globals in exportRoot instead, which acts as the defacto Animate namespace.