PDA

Просмотр полной версии : Работа с загруженным в браузер флеш


Ura79
31.03.2010, 14:39
С флеш до сей поры дел иметь не приходилось, поэтому не судите строго.
Суть вопроса: есть загруженная web-страница, на этой странице есть флеш элемент представляющий собой текстовое поле ввода и кнопку. Можно ли используя HTMLObjectElement или javascript (на сам элемент я выйти могу, знаю его id) записать данные в текстовое поле и нажать на кнопку?
Если можно, то как это сделать, или где про это можно почитать?
Получилось поставить элементу фокус, используя метод .focus(), но фокус поставился флешке в целом, а хотелось бы поставить его текстовое поле.

MrPoma
31.03.2010, 14:49
ExternalInterface (http://help.adobe.com/ru_RU/AS3LCR/Flash_10.0/flash/external/ExternalInterface.html) поможет.

Ura79
31.03.2010, 15:24
Как я понимаю ExternalInterface работает, если в флеше запрограммированна его поддрержка.
Но дело в том что структура флеша на web-странице мне неизвестна.
Можно ли работать с таким флешом или все ограничивается стандартными .focus(), .click() и т.п., с помощью которых данные в текстовое поле флеши не занесешь?

Dub4ek
02.04.2010, 15:33
Получилось поставить элементу фокус, используя метод .focus()
а он желтеньким цветом отобразился или там курсор замигал?

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

Ura79
02.04.2010, 19:40
[QUOTE=Dub4ek;897497]а он желтеньким цветом отобразился или там курсор замигал?QUOTE]

Нет, фокус получила сама флешка, а не текстовое поле в этой шлешке.
Можно конечно имитировать нажатие Tab и тогда фокус попадет на текстовое поле, но вот как передать в это поле информацию и имитировать нажатие на кнопку?

Фокус устанавливаю на javascript следующим образом:

var swf_ = document.getElementsByName('id_флеш');
if (swf_.length > 0)
{
var obj = swf_.item(0);
obj.focus();
}

Cheburah
07.04.2010, 11:47
Нет, фокус получила сама флешка,
а на основании чего был сделан такой вывод? Как определили, что флэшка получила фокус? Равнозначно было такое "получение фокуса" щелчку мышью по флэшке?

Таки, да, получает, и таки да, равнозначно, вопрос - как теперь его снять? Есть ли что-то вроде unfocus?