Flash wmode = "прямая" проблема в приложении FB canvas - PullRequest
1 голос
/ 19 декабря 2011

Я разрабатываю приложение FB, используя Flash, используя wmode = "direct" (для 3D-графики).

В Internet Explorer каждый раз, когда я открываю любое диалоговое окно FB (например, диалоговое окно "Купить кредиты"), вспышка исчезает икогда диалоговое окно закрыто, флэш-память не появляется снова ...

Я пытался установить видимость после закрытия диалогового окна: http://developers.facebook.com/docs/appsonfacebook/tutorial/ (в разделе «Специальные рекомендации для разработчиков Adobe Flash»), но это не сработало.

Я также пытался использовать FB.Init hideFlashCallback: http://developers.facebook.com/blog/post/555/ (в разделе «Обнаружение видимости объектов Flash в приложениях Canvas»), но это не так.Кажется, не вызывается функция обратного вызова ...

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

PS - я использую swfobject для встраивания SWF-файла.

Спасибо большое!Roei


ОБНОВЛЕНИЕ: Я удалил параметр appId из URL-адреса FB JS:

<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js#appId=XXXX&xfbml=1"></script>

, и теперь выполняется hideFlashCallback, но все же - вспышка не появляется снова...

Ответы [ 2 ]

0 голосов
/ 30 декабря 2011

Я обновил раздел Особые замечания для разработчиков Adobe Flash , потому что фрагмент кода был немного устаревшим.

Новый фрагмент должен дать вам представление о том, какиспользовать hideFlashCallback, семантика которого изменилась со времени устаревшего поста в блоге, так как функция теперь принимает в качестве аргумента элемент flash.(К сожалению, мы еще не документировали это, но скоро будем).Следует отметить, что обратный вызов в настоящее время не работает в IE8, но будет работать после того, как исправление будет передано в следующий вторник.

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

В противном случае, если вы можете дать мне URL-адрес холста для вашего приложения, я могу посмотреть на него.

0 голосов
/ 19 декабря 2011

Вы пробовали это с другими wmodes? то, что вы можете попробовать, это на самом деле удалить div, в который вы записываете свой flash, добавить его с помощью innerHTML и снова запустить swfobject.embed

...