如何通过js检测flash播放器版本
How to detect flash player version by js
此函数始终在IE 中返回"0"
function getFlashVersion(){
var flash = 'None';
// Count down from 10.
for(var i = 10; i > 0; i--)
{
try{
flash = new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+String(i));
}catch(e){
//console.log(e);
}
if(flash != 'None')
return flash.GetVariable("$version");
}
return 0;
}
但铬返回11.8.r800
如何在IE.
我认为使用swfobject库会有更好的运气。使用这个库,您可以简单地执行以下操作来获得跨浏览器的flash版本:
// returns a JavaScript object
var playerVersion = swfobject.getFlashPlayerVersion();
// access the major, minor and release version numbers via their respective properties
var majorVersion = playerVersion.major;
以下是我的一个项目中使用的内容
也适用于IE
function getFlashVersion(){
// ie
try {
try {
// avoid fp6 minor version lookup issues
// see: http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
var axo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');
try { axo.AllowScriptAccess = 'always'; }
catch(e) { return '6,0,0'; }
} catch(e) {}
return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/'D+/g, ',').match(/^,?(.+),?$/)[1];
// other browsers
} catch(e) {
try {
if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){
return (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]).description.replace(/'D+/g, ",").match(/^,?(.+),?$/)[1];
}
} catch(e) {}
}
return '0,0,0';
}
var version = getFlashVersion().split(',').shift();
if(version < 10){
alert("Lower than 10");
}else{
alert("10 or higher");
}
试试这个
var a, b, c, y ='length',v = "name",t = "indexOf",m = "match";
if (c=window.navigator.plugins)
for (var d = 0; d < c[y] && !b; d++) {
var e = c[d]; - 1 < e[v][t]("Shockwave Flash") && (b = e.description)
}
if (!b) try {
a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"), b = a.GetVariable("$version")
} catch (g) {}
if (!b) try {
a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"), b = "WIN 6,0,21,0", a.AllowScriptAccess = "always", b = a.GetVariable("$version")
} catch (ca) {}
if (!b) try {
a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"), b = a.GetVariable("$version")
} catch (l) {}
b &&
(a = b[m](/['d]+/g)) && 3 <= a[y] && (b = a[0] + "." + a[1] + " r" + a[2]);
console.log(b) || void 0
相关文章:
- 如何检查用户在html5视频播放器中观看了完整的视频
- 音乐播放器使用相同的id播放所有内容
- 在FF和IE中使用vimeo播放器的问题-加载flash播放器而不是使用HTML5播放器
- 使用HTML5播放器时使用Javascript更改Youtube视频
- 可以't根据设备自动调整youtube播放器的大小
- html5视频播放器和视频js之间的关系
- 有没有办法在dailymotion播放器的新测试版中播放youtube视频
- 我可以共享一个HTML播放器吗
- 动态加载的自定义javascript/jQuery/HTML5音频播放器的问题
- 我们如何在dailymotion播放器的新测试版中播放youtube视频
- 角度媒体播放器和动态内容
- Javascript::通过HTML5音频播放器播放列表播放多个音频文件
- HTML5、CSS3和/或JS中旋转CD上的音频播放器
- 用于播放背景音乐的嵌入式flash播放器在IE浏览器中不起作用
- 在选择更改时更改从外部javascript生成的flash播放器
- 视频播放器错误promise DOMException中未捕获
- 如何通过js检测flash播放器版本
- 海报图像在视频中不起作用,azure媒体播放器的1.5.0版本更新
- Brightcove播放器,手动选择播放什么版本
- 在IE中获得flash播放器版本(SWFObject v2.2)