Форум 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)
-   -   Таймер с момента последнего действия (http://www.flasher.ru/forum/showthread.php?t=74553)

petyar 22.01.2006 22:00

Таймер с момента последнего действия
 
У меня такой вопрос... Как создать таймер, который начинался с совершения любого действия (движения мыши, нажатие клавиши)
и при совершении любого действия обнулялся?

Antares 22.01.2006 22:22

Добавить объект-слушатель событий Mouse и Key, и при каждом событии запоминать результат, возвращаемый geTimer. Когда надо получить прошедшее время -- getTimer - lastActionTime.

Viola!

petyar 22.01.2006 22:30

В принципе так и думал. А есть ли способ узнать, что мышка вышла из поля плеера?

Antares 22.01.2006 22:31

Есть.

Nox Noctis 23.01.2006 01:28

есть один способ наверняка: накрыть всё поле клипа огромной невидимой кнопкой. срабатывание onRollOut этой кнопки означает, что мышь вышла за пределы ролика.

других эффективных способов я не знаю. все какие-то однобокие и хитроумные. :) Antares, может, знает...

Antares 23.01.2006 01:30

Если ролик в браузере, то самый надежный -- отдавать координаты из JavaScript и проверять во Flash. Сбоев -- 0. В обоих (ок, двух основных) браузерах тормозов не вызывает ни капельки.

Nox Noctis 23.01.2006 01:35

в таком случае надо
1. сообщить флэшу, по каким координатам он сам находится на странице
2. сообщать ему всё время через SetVariable координаты мыши
3. добиться, чтобы это везде одинаково работало. если речь об ИЕ6 и ФФ старше 1.5 - то еще ладно, а если что-то большее...

вобщем я честно говоря не ковырялся и не пробовал решить п. 3, но что-от у меня нет никакого энтузиазма в этой области... :)

Antares 23.01.2006 01:38

Не совсем. Точнее, не только так.

1. Вычисляем координаты относительно левого верхнего, правого верхнего, какого угодно верхнего (нижнего) угла флэшки и
2. Передаем ей координаты.

Все просто. И работает везде одинаково, проверено не раз.


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

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