Facebook支付对话框隐藏flash内容E11
我在IE11中发现了facebook支付对话框的奇怪行为,该对话框适用于使用Context3D的Flash对象的应用程序 例如,当您的FB应用程序作为HTML画布中的flash对象(使用Facebook支付对话框隐藏flash内容E11,facebook,flash,internet-explorer,Facebook,Flash,Internet Explorer,我在IE11中发现了facebook支付对话框的奇怪行为,该对话框适用于使用Context3D的Flash对象的应用程序 例如,当您的FB应用程序作为HTML画布中的flash对象(使用{wmode:“direct”})工作时,FB SDK会隐藏您的flash对象。基本上,“direct”wmode允许应用程序将其图形直接流式传输到“monitor”中(简而言之)。因此,在显示任何其他内容之前,应该隐藏此块。这就是为什么FB对话框(通知、邀请、付款对话框等)应该隐藏flash的原因 但是,如果您
{wmode:“direct”}
)工作时,FB SDK会隐藏您的flash对象。基本上,“direct”wmode允许应用程序将其图形直接流式传输到“monitor”中(简而言之)。因此,在显示任何其他内容之前,应该隐藏此块。这就是为什么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的应用程序我已经找到了解决这个问题的方法(但我认为IE的兼容模式不是一个“清晰”的解决方案)正在为IE添加兼容的元标记:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />
UPD
很多测试都向我表明,IE11部分解决了这个问题。也许这取决于Flash插件的版本。我正在尝试查找所有依赖项
UPD
我发现IE中Flash插件的偶数版本正确地处理了这种情况,而不是奇数版本(15、17、19)将其破坏