Показать сообщение отдельно
Старый 27.01.2010, 11:41
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
в AS/AS2 функции не првязаны к контексту объекта, в котором они определены, т.е. могут быть вызваны 'от имени' кого угодно, что и происходит когда ты присваиваешь ее обработчику controls_mc.stop_btn.onRelease
если же вызвать stop_video() в самом обработчике, то все будет нормально, функция отработает в контексте Imgholder
Код AS1/AS2:
controls_mc.stop_btn.onRelease = function(){
	stop_video();
}
но с другой стороны переменную А stop_video берет из той области видимости, где определена сама, только это не this.A, а 'абстрактная' A, (this.A для случая controls_mc.stop_btn.onRelease = stop_video; будет неопределена)
с _parent.Imgholder, думаю понятно

вобщем, сумбур бардак, конечно, но такова специфика, надо просто привыкнуть
или не привыкать, а переходить на AS3


Последний раз редактировалось silin; 27.01.2010 в 11:49.