最近,我们发现Firefox已经对插件进行了更改,因此如果用户没有使用最新版本,将暂时阻止用户运行它们。我们的网站要求Flash播放声音并与用户的网络摄像头/麦克风进行交互,因此我们需要尽我们所能来确保他们不会收到这些警告。
向我建议的一种方法是创建一个小的Flash控件,并等待它告诉Javascript它已被初始化。如果没有(并且用户正在使用Firefox),则他们将被带到提示他们更新的页面。这可能有用,但我担心它的可靠性,以及在我们网站的每个页面上运行它。
或者,我一直在研究一种使用Javascript来检测版本的方法,而不需要制作Flash控件。我不仅需要用户当前版本的Flash,还需要Firefox预期的版本 - 我还没有找到这样做的自主方式。每次Adobe发布新版本时,我都不希望管理员必须更改小值。有没有人有任何建议我如何找到Flash的最新版本,或者另一种方法来解决我的问题?
答案 0 :(得分:1)
我建议您查看SWFOject和Express Install选项,这样可以大大简化升级。
答案 1 :(得分:0)
我刚注意到有人提出这个问题,所以我认为我会提供最终的解决方案,我认为这可以减少最近一个问题的影响,即Firefox阻止了最近的版Flash,等待Adobe修复。
基本上,我在我的问题中对第二段进行了修改。它不会将用户引导到新页面;相反,它会在当前页面上打开一个对话框,说明它在与Flash通信时遇到问题。 (它不具体说"你的Flash已经过时"因为如果浏览器在是/否用户对话框下隐藏flash,也会发生这种情况。它还包含一个小的假闪存对象,其想法是,如果浏览器想要显示安全警告,接受提示等,它可以在该空间内完成。
如果Flash控件最终将其回调到JavaScript,则对话框会自行消失。它还会在sessionStorage
下安装一个变量,因此我们不必再次检查它(Flash会在某些计算机上花费足够的时间,您可能会在一瞬间看到该对话框。)