1

我使用 wmode="direct"(用于 3D 图形)使用 Flash 开发了一个 FB 应用程序。

在 Internet Explorer 中,每次我弹出任何 FB 对话框(例如购买积分对话框)时,flash 都会消失,当对话框关闭时,flash 不会重新出现...

我试图在对话框关闭后设置可见性:http: //developers.facebook.com/docs/appsonfacebook/tutorial/(在“Adobe Flash 开发人员的特殊注意事项”下),但它没有用。

我也尝试过使用 FB.Init hideFlashCallback: http://developers.facebook.com/blog/post/555/(在“检测画布应用程序中 Flash 对象的可见性”下),但它似乎没有调用回调函数...

任何人有同样的问题并设法使其工作?还有其他建议吗?

PS - 我使用 swfobject 嵌入 SWF 文件。

非常感谢!荣


更新:我从 FB JS url 中删除了 appId 参数:

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

现在执行了 hideFlashCallback,但仍然 - 闪光灯没有重新出现......

4

2 回答 2

0

你用其他 wmode 试过了吗?您可以尝试的实际上是删除写入闪存的 div,使用 innerHTML 添加它并再次运行 swfobject.embed

于 2011-12-19T14:59:21.107 回答
0

我更新了Adob​​e Flash 开发人员的特殊注意事项部分,因为代码片段有点过时了。

新的代码片段应该让您了解如何使用 hideFlashCallback,它的语义自那篇现已过时的博客文章以来发生了变化,因为该函数现在将 flash 元素作为参数。(不幸的是,我们还没有重新记录它,但很快就会)。需要注意的一件事是,回调目前在 IE8 上不起作用,但在下周二推送修复后会起作用。

也就是说,它应该在没有回调的情况下工作。这可能是由于在重新显示发生之前停止脚本执行的 javascript 致命错误引起的。查看您的 javascript 控制台以查看是否有任何错误。

否则,如果您能给我您的应用程序的画布 URL,我可以查看它。

于 2011-12-29T22:02:43.220 回答