Jos*_*aro 3 javascript flash client
我知道如何检测Flash播放器是否安装在浏览器中.我使用的hasFlashPlayerVersion()函数的SWFObject了点.但是,我似乎无法找到有关如何检测插件是否已安装且仅禁用的任何文档.我没有看到Flash Player Detection Kit中的任何文档检查是否启用了插件.
我同意Ape并且在很久以前做了类似的事情,其页面上写着"检测Flash播放器......"并等待20秒,同时加载swf文件并立即将浏览器重定向到页面外.
如果计时器到期(swf从未加载),它将提示用户安装Flash.
可以将该方法与您提到的swfobject hasFlashPlayerVersion()函数结合使用.如果它们有闪光但swf永远不会加载,那么假设闪光灯被禁用是相当安全的.
所以,实际上只有3种选择:
在伪代码中,可能如下所示:
var hasFlash = detectFlashPlayerInstalled();
var flashEnabled = false;
/* attempt to load the swf file then wait for some time, then... */
var isDisabled = hasFlash && !flashEnabled;
Run Code Online (Sandbox Code Playgroud)
这与javascript函数一起工作,如:
function flashAlive() {
flashEnabled = true;
}
function detectFlashPlayerInstalled() {
//TODO: detect flash in a better way, this will do for now
return swfobject.hasFlashPlayerVersion(VERSION);
}
Run Code Online (Sandbox Code Playgroud)
从一个小的swf文件调用,包含:
getURL("javascript:flashAlive();");
Run Code Online (Sandbox Code Playgroud)
我希望在某种程度上有所帮助.
| 归档时间: |
|
| 查看次数: |
14010 次 |
| 最近记录: |