Показать сообщение отдельно
Старый 06.04.2014, 09:29
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 3  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
А зачем вам изнутри клипа создавать функцию на _root ?
Тогда уж в _root определяем функцию и цепляем её на клип....

Если клип назвать TMC, то будет так:

Код AS1/AS2:
var func = function () {
	trace( this )
	trace ("слова наугад");
}
 
TMC.fname = func
 
TMC.onRelease = function(){
	this.fname() 	
}
Соотв., если у вас 100 клипов - не надо эту функцию пихать в каждый ручками. Если вы ее перепишите - она автоматом изменится и во всех клипах.

Относительно же вашего случая можно писать так:

Код AS1/AS2:
this.fname = function () {
	trace( this )
	trace ("слова наугад");
}
 
this.onRelease = function(){
	fname() 	
}
НО. При подгрузке клипа через movieClipLoader, при попытке создать им на РУТЕ функцию - вы получите sandBox error и всё кончится

К слову сказать, _root уже 100 лет не использую. В трэйсе вы можете видеть _level0, что является "более продвинутым" аналогом рута

Так как _root можно переопределить, в общем случае вы можете получить огромную путаницу...

Код AS1/AS2:
trace( _root )  // _level0
_root = TMC
trace( _root )  //_level0.TMC
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2