Показать сообщение отдельно
Старый 15.04.2009, 20:08
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 6  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
Цитата:
Сообщение от mozi Посмотреть сообщение
to Жень Шень:
В ситуации движения курсора по пути "за пределами swf > бОльший клип > меньший клип > бОльший клип > за пределами swf" то что ты написал будет работать так...

...а требуется чтоб было так:

big_btn.onRollOver
small_btn.onRollOver
small_btn.onRollOut
big_btn.onRollOut
Мне кажется, Жень Шень предложил вполне неплохой вариант решения проблемы малыми затратами.

Попробуйте переписать содержимое big_btn.onRollOver так, чтобы он не реагировал на связку onRollOut + onRollOver , если она выполняется в пределах одного кадра.

Например, отложите выполнение функций onRollOver и onRollOut на 1 кадр каким-нибудь этаким способом:
Код AS1/AS2:
funcDelayed= function(){
    delete this.onEnterFrame;
    this.activeMouseHandler();
}
 
big_btn.onRollOver= function(){
    this.activeMouseHandler= _my_onRollOver;
    this.onEnterFrame= funcDelayed;
}
 
big_btn.onRollOut= function(){
    this.activeMouseHandler= _my_onRollOut;
    this.onEnterFrame= funcDelayed;
}
Код набросал из головы, чтобы показать идею. Не проверял.


Последний раз редактировалось Stargazer; 15.04.2009 в 20:17.