Я создал приложение для киосков Air 2 / Flex 4 с помощью Flash Builder 4. В настоящее время я внедряю браузер с сенсорным экраном, чтобы пользователи могли просматривать обучающие видеоролики компании.
В попытке улучшить удобство использования веб-сайта на сенсорном экране, я поместил компонент HTML в адаптацию DragScrollingCanvas Дуга МакКуна (обновлена для использования компонента flex 4 'Scroller'), чтобы пользователи могли прокручивать веб-страницы, проводя пальцем по экрану. Событие mouseDown используется для запуска прокрутки области просмотра.
Кроме того, веб-страница была изменена, чтобы отключить выделение текста со следующим css:
html {
-webkit-user-select: none;
cursor: default;
}
Проблема, с которой я сталкиваюсь, заключается в том, что компонент HTMLLoader запускает mouseDown только при нажатии ссылки / ввода / кнопки на веб-странице, а не при нажатии на фон или любой текст.
Кроме того, если я удаляю пользовательский css, событие mouseDown не будет срабатывать при выделении текста, но будет происходить, если щелкнуть ранее выделенный текст.
В качестве альтернативы я также попытался добавить контейнер группы с теми же размерами, что и HTMLLoader, чтобы обнаружить события mouseDown (чтобы у контейнера группы и HTMLLoader был один и тот же родительский контейнер Dragable), и мог захватывать события mouseDown и прокручивать окно просмотра, как и ожидалось. Однако, поскольку событие мыши обрабатывается контейнером группы, теперь я не могу перемещаться по веб-странице.
Кто-нибудь знает, почему компонент HTMLLoader не вызывает события mouseDown для всех щелчков мыши?