Захват события правого клика на плагине Flash с использованием JS при использовании WMODE = "window" - PullRequest
3 голосов
/ 26 мая 2009

Я использую пользовательское контекстное меню правой кнопкой мыши для приложения Flash (переопределяя стандартное меню Adobe). Для этого решения Uza по правому клику (http://www.uza.lt/blog/2007/08/solved-right-click-in-as3) хорошо работает.

Однако в плагине Flash Player (для Firefox / Chrome и т. Д.) Есть ошибка, которая не позволяет использовать международные символы при использовании WMode для встраивания html. WMode = "Widnow" работает.

http://bugs.adobe.com/jira/browse/FP-501

Эту проблему лучше увидеть здесь -

http://www.5etdemi.com/blog/archives/2005/06/firefox-wmodetransparent-is-completely-screwy-and-breaks-textfields/

Проблема

Мне нужно захватить событие правого клика, запущенное из плагина Flash player в контейнер веб-браузера, без использования WMode в теге html embed (т.е. WMode = "window")

У кого-нибудь есть идеи по этому поводу?

1 Ответ

0 голосов
/ 18 апреля 2011

JS-клик правой кнопкой мыши работает в непрозрачном и прозрачном режиме, потому что браузер отображает Flash внутри своего собственного дерева отображения. В этом режиме браузер получает события мыши, позволяет обрабатывать их JS, а затем передает их плагину Flash. (Это причина, по которой возникают ошибки при вводе акцентированных или нелатинских символов в прозрачном режиме, потому что некоторые браузеры не пропускают их правильно).

В других режимах окна объект Flash не является частью HTML DOM таким же образом. Вместо этого ему просто дают прямоугольник дисплея и можно рисовать прямо на нем. Он также получает события клавиатуры и мыши напрямую от операционной системы, поэтому я не ожидаю, что какие-либо хаки контекстного меню JS будут работать в любом основном браузере.

...