【问题标题】:Facebook payment dialog hides flash content E11Facebook 支付对话框隐藏 Flash 内容 E11
【发布时间】:2015-10-15 16:26:15
【问题描述】:

我发现 IE11 中的 Facebook 支付对话框的奇怪行为适用于带有适用于 Context3D 的 Flash 对象的应用程序。

例如,当您的 FB 应用程序在 HTML 画布中作为 flash 对象(使用{ wmode: "direct" })工作时,FB SDK 会隐藏您的 flash 对象。基本上,“直接” wmode 允许应用程序将其图形直接流式传输到“监视器”(如果简而言之)。因此,在显示任何其他内容之前,应隐藏此块。这就是为什么 FB 对话框(通知、邀请、支付对话框等)应该隐藏 flash。

但是,如果您想在 IE11 中查看付款,您的 flash 对象将被隐藏,并且永远不会再看到。

嵌入 swfobject v2.2 的 Flash 对象:

swfobject.embedSWF(
    cfg.preloader_path,
    cfg.flashID,
    755,
    650,
    '11.0.0',
    'expressInstall.swf',
    { key: "val" },
    { "wmode" : "direct", "quality" : "high", "bgcolor" : "#ffffff" },
    { id: cfg.flashObjectId, name: cfg.flashObjectId, align: "middle" },
    function (swf) {
        if (swf.success) {
            console.log('Embedded successfully');
            // some staff here
        } else {
            console.log('Embedding failed');
        }
    });

使用 FB API v2.X 的应用程序

【问题讨论】:

    标签: facebook flash internet-explorer


    【解决方案1】:

    我找到了解决这个问题的方法(但我认为 IE 的兼容模式不是一个“明确”的修复)正在为 IE 添加兼容的元标记:

    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />
    

    UPD

    大量测试表明,IE11 的问题已部分解决。也许这取决于 Flash 插件版本。我正在尝试查找所有依赖项。

    UPD

    我发现 IE 中的 Flash 插件的偶数版本可以正确处理这种情况,而不是奇数版本 (15,17,19) 将其分解。

    【讨论】:

      猜你喜欢
      • 2013-03-21
      • 2014-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多