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

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

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

Регистрация: Jul 2004
Сообщений: 113
По умолчанию MouseEvents под Firefox

Сегодня обнаружил что в Firefox как-то не так стала работать обработка событий мыши.

Во всех браузерах кроме мозиллы работает так:
Включаю обработку событий MouseMove, MouseDown и MouseUp на stage.
Делаю MouseDown и тащу мышку за пределы флэшки, отпускаю мышу за ее пределами и вижу что пока тащил с зажатой кнопкой то mouseMove обрабатывается и показывает координаты выходящие за пределы флэшки, а также срабатывает событие на MouseUp.

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

Добавлено через 36 часов 57 минут
вижу что никто не поддержал беседу... На случай если кто-нибудь столкнется с этой проблемой, вот как ее решил я:

В html страничке вписываем скрипт для отлова событий мыши из браузера и через ExternalInterface перенаправляем в флэшу. В самой флэшке в отдельном классе функции принимают эти данные и уже транслируют через dispatchEvent стандартные MouseEvents с правильными значениями позиций и соответственно факт нажатия mouseUP, который сама флэша как я писал выше в фаерфоксе не ловила.

Ну а по коду приложения там где я раньше ловил стандартные флэшовые MouseEvents, теперь просто подписываюсь на эти же события, но в своем классе, который ловит браузерные события. Метод работает отлично в любых браузерах, но для себя я на всякий случай сделал так, что флэшка проверяет в каком браузере запущена и если в FireFox, то слушает события из собственного класса, а если другой браузер, то слушаем стандартные события.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 25.10.2016, 12:07
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 2  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
А чем Event.MOUSE_LEAVE не устраивает?
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 28.10.2016, 19:45
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 3  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
у меня специфика такая, что игрок зажимает кнопку мыши в пределах приложения, ведет мышку по экрану и если мышка ушла за пределы флэши то содержимое должно продолжать реагировать вплоть до отпускания кнопки мыши. Это замечательно работало до поры до времени во всех браузерах, но недавно в фаерфоксе перестало работать. тоесть мышка уходит за пределы флэши и все.. маусмув не отлавливается и если отпустить кнопку мыши за пределами приложения, то mouseup тоже не ловился...

Вообще после нескольких дней танцев с бубном я убедился в том, что проблема эта вопервых только на десятой винде.. на семерке все замечательно работает... а в десятке проблема проявила себя начиная с 48 версии мозиллы... на 47 тоже все отлично работает... а вот на 48 мало того, что не работает отлов событий флэши за пределами флэши, так еще и события браузера не работают Над флэшой... тоесть за пределами флэшки отлчно пашут браузерный mousemove и mouseup, а флэшовые нет, и наоборот.... при этом на 49 версии мозиллы флэшовая проблема сохраняется (под 10 виндой), а браузерные ловит по всему документу.. и за флэшкой и на флэшке.... в итоге я для себя сделал проверку что если браузер мозиллы под 10 винду и версия у него 48, то тупо не пускать в приложение и просить обновить браузер.. а для 49 и выше версии применяю выше описаный способ - пуляю браузерные события в флэшку через External Interface.... интересно что в седьмой винде как раз браузерные события не работают над флэшкой, но флэшовые работают за пределами флэшки....

в итоге получается что на 7 винде я ничего не трогаю и даю флэшке обрабатывать свои события, а на десятке переключаюсь на отлов javascript браузерных начиная с 49 версии мозиллы.. для остальных браузеров ничего не делаю так как флэшка там нормально работает. Такие вот танцы с бубном.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 28.10.2016, 21:44
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 4  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
и еще направление вращения колеса в фоксовом js инвертировано по сравнению с конкурентами(в семерке по крайней мере).Так до кучи

Старый 02.11.2016, 12:08
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 5  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
оказывается не у всех в семерке на 49 версии все хорошо...гадский Firefox своей жизнью живет
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 02.11.2016, 12:31
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 6  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Всегда был уверен, что фаерфокс это один из самых дурацких браузеров. Мне он тоже кучу проблем доставляет. Он даже хуже IE
Но колесо в нем на семерке не инвертировано) С этим у меня все норм
__________________
Ко мне можно и нужно обращаться на ты)

Старый 02.11.2016, 12:44
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 7  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
фаерфокс и IE это по сути единственные браузеры, которые до сих пор 3д играют через dirextX, а не через openGL, как все остальные браузеры, которые перешли на PPAPI,.. в этом плане для 3д они лучше, потому как картинка плавнее, фпс больше и нет дебильных дерганий какие в изобилии дает хром и все хромиум выкидыши котрые в рот гуглу смотрят. Раньше опера отлично для этого подходила, но теперь и она на хромиуме со всеми вытекающими последствиями.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

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

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

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


 


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


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