Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   onRollOver/onRollOut проблема залипает при быстрых движениях курсора (http://www.flasher.ru/forum/showthread.php?t=158875)

flasher2085 24.06.2011 15:40

onRollOver/onRollOut проблема залипает при быстрых движениях курсора
 
Здравствуйте, долго рылся , но не нашел ответ на свой вопрос:

проблема такая, есть код:

Код AS1/AS2:

main_scene.blck_1.onRollOver = function():Void  {
        ...
};
blck_1_hover.block_1_out.onRollOut = function():Void  {
        ...
};

при медленном движении мышки onRollOver и onRollOut нормально работают, при быстром движении мышки с выходом курсора за пределы флешки залипает в состоянии onRollOver и onRollOut не срабатывает.

Есть ли какое-нить решение, чтобы onRollOut не залипал при быстрых движениях мышки? и насколько это кроссбраузерно получится?

Заранее благодарен

dark256 25.06.2011 02:36

фпс паблы - каков?

Alex_fls2085 25.06.2011 06:59

fps 100 выставлен. http://mniitep.com/test/timeline/del.html вот пример. При очень быстром движении курсора onRollOut не срабатывает.

В общем поискал-поискал по этому поводу и пришел к выводу, что в AS1/2 самый надежный метод - это определение JS-ом наведен ли на флешку курсор или нет и передача данных во флешку. Так и сделал: определяю наведен ли курсор через js и отправляю переменную во флешку (циферка 0/1 на примере). Все работает.
Делаю AS скрипт проверки типа, если курсор ушел из флешки, то чтобы onRollOut сделалось.
Но тут тут тоже возникает западло, т.к. переменная из JS передается с небольшой задержкой и иногда во флешке скрипт проверяет переменную, а она еще не дошла и условие не срабатывает.

Вообще хз как тут быть. Есть идея сделать задержку типа проходит секунда, скрипт сверяет переменную и делает onRollOut, но с синтаксисом никак не получается, подскажите как это оформить.

И еще вопрос:
onRollOver - это если навел курсор
onRollOut - это отвел курсор

а как отследить, что юзер какое-то время (1 сек к примеру) наводил на область мувика. Т.е. если юзер держит курсор над мувиком 1 сек, то срабатывает что-то. Просто setInterval, наверное, не подойдет. Тогда будет навел, быстро отвел, а потом сработало, а нужно чтобы сработало только если 1 секунду курсор подержал над мувиком.


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

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