![]() |
Проблемы в IE - ExternalInterface.call("eval", "2+2")
Здравствуйте. Заранее извиняюсь за не очень стройное название темы(действительно сложно красиво сформулировать данный вопрос). На днях узнал что есть такой удобный способ возвращать значения переменных и выражений из JS во флеш. А делается это так:
Код AS1/AS2:
Но вот в IE почему то всегда null. Первое что приходит в голову, IE не поддерживает такие ExternalInterface.call("eval" вызовы из флеша. Но если например сделать так: Код AS1/AS2:
|
1. Попробуйте просто без флеша под IE вывести этот eval и посмотрите, что получится.
2. Возможно в коде публикации (если она сделана стандартно, а не с помощью SWFObject) разрешены внешние скрипты в не-IE браузерах, а для IE не прописано. 3. Самое главное. Зачем оно вам? ExternalInterface.call - отличный метод, постоянно применяю, только мне кажется, что можно как-то без eval обойтись. Зачем вам делать вызов JS и производить вычисления в среде JavaScript, если есть ActronScript? Какая стоит задача? |
Большое спасибо за ответ. Здесь задача получить URL из строки адреса браузера. И в FF и в Opera это замечательно работает.
Использую такой код: Код AS1/AS2:
|
Код AS1/AS2:
|
Да действительно. Здесь тоже null в IE.
Делал так: Код AS1/AS2:
Сами eval в IE работают. Нашёл такую страничку для тестов - http://www.w3schools.com/jsref/jsref_eval.asp А по настройкам публикации. Не знаю. Стандартные настройки. Ничего не менял. Код HTML написан от руки. Код:
<html>А вообще у вас в IE работают return'ы в функциях описанных в ExternalInterface.call() ? Возможно это какая то недоделка FP и поэтому не работает? |
Цитата:
Ну как, разобрались? |
К сожалению нет. С IE не выходит никак :(
Цитата:
Так как у вас работает, подозреваю что это какая-то местная проблема связанная с моим компом :) Другого объяснения не вижу :) А настройки публикации... Там ничего не менял. Всё стандартно. И вообще суть этого метода определить на каком домене юзается флешка и если это не наш родной домен, то заблокировать флешку. В любом случае спасибо вам большое что откликнулись. Я думаю что в целях защиты и этого хватит. Ведь народ пользуется разными браузерами, и если защита работает хоть в каких-то то воровать уже никто не станет. |
Цитата:
Кстати, вот что. Вы наверное на домашнем компе тестируете? Локально страницу запускаете? Или на хостинге то же самое? Если проблема с локальным тестированием, попробуйте внести диск в доверенную зону, как здесь описано, может быть из-за этого. http://www.flasher.ru/forum/showthread.php?t=92951 Это несложно. Плеер-плагин и плеер-компонет-ActiveX для IE - это разный софт, в принципе, может быть поэтому работает в не-IE браузерах. |
Вот залил сюда просто пример.
http://azag--thoth.narod.ru/my.swf Код на первом кадре: Код AS1/AS2:
Извините что отписываюсь спустя столько дней. Были обстоятельства не позволяющие пользоваться компом. Большое спасибо вам за ваши советы :) |
Если флешка опубликована на странице, то все определяется и в IE.
Вот мой пример: http://vesta-s.ru/demo/externalinterface/main.htm Посмотрите в IE и в не-IE браузерах (верхняя строка, на остальное не обращайте внимание). Видимо, при прямой загрузке в IE флеш не может полноценно работать с JS. |
| Часовой пояс GMT +4, время: 14:02. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.