javascript - 来自嵌入式 .swf 跨浏览器的弹出窗口

标签 javascript actionscript-3 safari popup

情况:您在 html 页面中嵌入了一个 .swf,当您单击 .swf 中的某些内容时,它需要弹出一个无边框窗口。通常这会相当容易 - 但考虑 Safari,它在启用弹出窗口阻止程序时完全禁用所有“window.open”功能(如果该功能是在点击时触发的,但它不计算 flash 中的点击次数) .您如何为不执行 window.open 的浏览器创建优雅降级(提供替代且大致等效的体验)的东西?

(注意:这是 AS3,我们正在谈论的是适用于 PC 或 Mac 的 Safari 3 - 但更广泛地说,任何不支持或拒绝允许 javascript window.open 函数的浏览器。)

最佳答案

如果您的 SWF 使用 wmode='opaque' 加载或 wmode='transparent' ,那么您可以让 SWF 输出 JavaScript 代码创建一个空的 <div>位于 SWF 区域上方。那<div>然后可以处理 onclick事件并创建弹出窗口而不是 Flash 代码。

关于javascript - 来自嵌入式 .swf 跨浏览器的弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/312877/

相关文章:

javascript - react native : build Login Screen

javascript - rails 4 x Bootstrap 3 : Dismissible alerts not working

actionscript-3 - ActionScript:来自ByteArray的声音存在滞后

actionscript-3 - 我应该用什么来在 as3 中加载音频而不是 load()?

actionscript-3 - 线触发器的 ActionScript 角度

javascript - 在 Safari 中为复杂对象调用 JSON.stringify 错误

javascript - 我可以重构嵌套的 async.each 循环吗?

javascript - 期望在箭头函数中返回一个值。 (xo代码风格)

ios - iOS/safari 上的 SVG 凸起,带有滤镜、feGaussianBlur 和 feColorMatrix

html - 如何在 Safari 中将 HTML 元素打印为页面?