Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.11.2007, 01:00
foxy вне форума Посмотреть профиль Отправить личное сообщение для foxy Найти все сообщения от foxy
  № 1  
Ответить с цитированием
foxy

Регистрация: Feb 2007
Сообщений: 2
По умолчанию Ошибка в работе onRollOver

Доброе время суток.
Сталкнулась с такой проблемой: есть динамически формируемое меню (названия пунктов берутся из XML). При наведении на пункт меню должен происходить эффект "bounce" т.е. название меню должно c небольшим ускорением смещаться вниз, ударяться о нижнюю границу меню и замирать. Я этот эффект реализовала программно, всё работает. НО! если слишком быстро перескакивать мышью с одного пункта меню на другой, то "bounce" исчезает, остаётся только выезжание надписи вниз. Такое впечатление, что onRollOver не успевает среагировать. Возникла мысль насчёт паузы перед выполнением onRollOver. Пока это реализовать не получается.
Уже два дня сижу в поиске, ничего не выходит .
Помогите плз.
Вот ссылка на то, как меню выглядит сейчас.
http://reflection.com.ua/top_menu.html

код выглядит примерно следующим образом:
Код:
mc.onRollOver = function(){
установка цвета пункта меню;
this.onEnterFrame = function () {
реализация эффекта "bounce";
}
}
С setInterval в начале обработки onRollOver пункты меню вообще не двигаются. Правда, не уверена, что это вообще могло бы быть решением проблемы.


Последний раз редактировалось foxy; 14.11.2007 в 01:03.
Старый 14.11.2007, 08:18
terbooter вне форума Посмотреть профиль Отправить личное сообщение для terbooter Найти все сообщения от terbooter
  № 2  
Ответить с цитированием
terbooter

Регистрация: Oct 2006
Адрес: Novosibirsk-Kaliningrad
Сообщений: 1,278
Отправить сообщение для terbooter с помощью ICQ Отправить сообщение для terbooter с помощью Skype™
не надо в оnRollOver вешать onEnterFrame. Он же у вас вызывается все время пока мышка по кнопке двигается.
При наведении установите флаг и запустите onEnterFrame (если флаг уже установлен то не запускайте), при отведении снимите флаг и удалите onEnterFrame
Только "bounce" поплавнее бы и dgrag out добавить.
Те там где
Код:
...XXX.onRollOut = function ...
добавить
Код:
...XXX.onRollOut = XXX.onDragOut = function ...


Последний раз редактировалось terbooter; 14.11.2007 в 08:31.
Старый 14.11.2007, 09:29
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 3  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от terbooter
не надо в оnRollOver вешать onEnterFrame. Он же у вас вызывается все время пока мышка по кнопке двигается.
Он не все время вызывается.

Старый 14.11.2007, 11:17
foxy вне форума Посмотреть профиль Отправить личное сообщение для foxy Найти все сообщения от foxy
  № 4  
Ответить с цитированием
foxy

Регистрация: Feb 2007
Сообщений: 2
terbooter, благодаря Вам мозги стали работать в нужном направлении. Спасибо большое, всё получилось.

Создать новую тему Ответ Часовой пояс GMT +4, время: 11:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 11:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.