Элегантный способ заставить ExternalInterface работать со всеми браузерами - PullRequest
0 голосов
/ 12 апреля 2011

Я хочу вызвать функцию внутри Flash-фильма из javascript, используя класс ExternalInterface. Проблема в том, что для работы с Firefox мне нужно использовать элемент embed, а с остальными мне нужно получить элемент object. Чтобы решить эту проблему, я дал разные идентификаторы этим двум элементам и в зависимости от агента пользователя выбираю один или другой:

 function getMovie(movieName) {

    alert(navigator.userAgent);
     if (navigator.userAgent.indexOf("Firefox") != -1) {
         return document["flash_embed"];
     } else {
         return document["flash_object"];
     }
 }

Это работает, но не очень элегантно и может не работать с другими браузерами ... Знаете ли вы лучший способ сделать это?

1 Ответ

3 голосов
/ 12 апреля 2011

Используйте swfobject для встраивания вашего флэш-фильма, а затем используйте его для получения правильного идентификатора.

...