IE через innerHTML не видит методов флэшки (которые EnternalInterface)
Добрый день!
Понимаю, что вопрос не совсем в тему, долго определялся в какой раздел его адресовать, решил все же выложить сюда, может есть люди, которые с таким уже встречались и решили. Код HTML PHP код:
test() регистрируется во флэше с помощью ExternalInterface.callback() Сразу скажу, во всех браузерах (Opera, Chrome, FireFox, Safari) эта штука нормально работает, а в IE не хочет. Ругается, что не определен метод test у Taxoman.swf (очевидно из-за динамического внедрения) Если внедрять SWF статически (сразу прописать в секции div: <embed ....>), то метод виден и понятен IE. Как быть, что делать? Альтернативный вариант: можно ли как то задавать момент запуска (старта для выполнения) флэшки SWF самому? Мне в коде JS надо дождаться определенного момента, когда станет известна одна переменная (приходит с сервера, но статическая флэшка стартует раньше, поэтому переменную не удается успеть передать через FlashVars. К тому же, если переменная не пришла, то надо флэшку вовсе не показывать) Благодарю за внимание. |
А что ИЕ научился понимать тег <embed>? <embed> - это ж нестандартный довесок от Мозилы, в принципе <object>ом нужно пользоваться.
|
да, знаю, но тем не менее его вполне хватало до сих пор (IE8, ранние не рассматриваю)
|
Используйте swfobject
|
использовал, не помогло...
Добавлено через 4 минуты самое интересное, что сама флэшка видна, как объект, а вот методы ExternalInterface-а не видны... |
А как использовали, что не помогло? Вы показываете код, который по мануалу вообще не должен работать, но не показываете код, который в принципе обычно работает...
По поводу "пока работает" - ну так и самолет можно 95-м заправить, и даже полетает немножко. |
да, похоже вы правы, <embed> хоть и отображает в IE флэшку и даже позволяет её использовать, но ExternalInterface при этом теряется (хотя обратная связь с флэша на JS связь есть). Сделал отдельно для IE внедрением через <object>, для остальных нетскейпообразных оставил как было.
|
Цитата:
|
ну почему же не пробовал? я пробовал динамический способ создания swfobject.embedSWF() для innerHTML
PHP код:
Также пробовал статический способ внедрения через <object>. Если есть недоверие, попробуйте сами. Немного расскажу про условия моей задачи: изначально div пустой в html/php. Если удалось получить переменную с фейсбука (fb id), то требуется вставить в div флэшку (swf) и передать ей параметром fb id (через FlashVars). Если не удалось, отобразить в div-е картинку, что доступ запрещен. Таким образом подходит только динамический способ внедрения. |
Серега, ты чтоли?
SWFObject по-другому использовать надо. Вот пример: Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> На сколько я знаю adobe его рекомендует :) Вот русская дока по swfobject |
Часовой пояс GMT +4, время: 10:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.