3 * Flash Player 10 バージョン判別チェックリスト
4 * http://www.adobe.com/jp/devnet/flashplayer/articles/ver_check_flp10.html
7 * https://web.archive.org/web/20130317163030/http://mtl.recruit.co.jp/blog/2008/02/ie7swfobject.html
9 * flash player 10, ie6+, ff2+, safari3, opera9.5
10 * flash player 11, ie7+, ff4(?), safari5, opera11
11 * flash player 12, ie8+, ff17, opera11
13 * http://helpx.adobe.com/jp/flash-player/kb/228683.html
14 * flash player 9, Mac 10.1-10.3, 98, ME
15 * flash player 10.1, Mac 10.4
16 * flash player 10.3, Mac 10.5
17 * flash player 11.1, Win2k, Android 2.x-4.x
19 var X_Pulgin_FLASH_VERSION =
20 !X_UA[ 'IE' ] || !X_UA[ 'ActiveX' ] ? parseFloat( X_Object_find( navigator, 'plugins>Shockwave Flash>version' ) || 0 ) :
21 !X_UA[ 'IE4' ] && !X_UA[ 'IE5' ] && X_UA[ 'ActiveX' ] ? (function(){
22 var obj = eval( 'var a,e;try{a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(e){}a' ),
23 ver = obj && obj[ 'GetVariable' ]( '$version' ).split( ' ' ).join( '.' );
24 return parseFloat( ver ) || 0;
28 X_Pulgin_FLASH_ENABLED =
29 X_UA[ 'ActiveX' ] ? !!X_Pulgin_FLASH_VERSION :
30 X_Object_find( navigator, 'mimeTypes>application/x-shockwave-flash>enabledPlugin' ),
33 * ie11 の 互換モード(8,7)では、Silverlight が動作しない?
35 X_Pulgin_SILVER_LIGHT_VERSION =
36 !X_UA[ 'IE' ] || !X_UA[ 'ActiveX' ] ? parseFloat( X_Object_find( navigator, 'plugins>Silverlight Plug-In>version' ) || 0 ) :
37 X_UA[ 'ActiveX' ] && 6 <= X_UA[ 'IE' ] ? (function(){
38 return eval( 'var a,i=0;try{a=new ActiveXObject("AgControl.AgControl");for(i=5;i;--i)if(a.IsVersionSupported(i+".0"))break;}catch(e){i=0}i' );
42 X_Pulgin_SILVER_LIGHT_ENABLED =
43 X_UA[ 'ActiveX' ] ? !!X_Pulgin_SILVER_LIGHT_VERSION :
44 X_Object_find( navigator, 'mimeTypes>application/x-silverlight>enabledPlugin' ),
46 //http://docs.unity3d.ru/Manual/Detecting%20the%20Unity%20Web%20Player%20using%20browser%20scripting.html
47 X_Pulgin_UNITY_VERSION =
48 !X_UA[ 'IE' ] || !X_UA[ 'ActiveX' ] ?
49 parseFloat( X_Object_find( navigator, 'plugins>Unity Player>version' ) || 0 ) :
50 !X_UA[ 'IE4' ] && !X_UA[ 'IE5' ] && X_UA[ 'ActiveX' ] ? (function(){
51 var obj = eval( 'var a,e;try{a=new ActiveXObject("UnityWebPlayer.UnityWebPlayer.1")}catch(e){}a' );
52 return obj ? parseFloat( obj[ 'GetPluginVersion' ]() ) : 0;
56 X_Pulgin_UNITY_ENABLED =
57 X_UA[ 'ActiveX' ] ? !!X_Pulgin_UNITY_VERSION :
58 X_Object_find( navigator, 'mimeTypes>application/vnd.unity>enabledPlugin' ),
60 X_Pulgin_GEARS_ENABLED =
61 window.GearsFactory ||
62 ( X_UA[ 'ActiveX' ] && 6 <= X_UA[ 'IE' ] ?
64 return eval( 'var a,e;try{a=new ActiveXObject("Gears.Factory")}catch(e){}!!a' );
66 X_Object_find( navigator, 'mimeTypes>application/x-googlegears>enabledPlugin' )
69 // QuickTime Plug-in 7.7.6
71 X_Pulgin_QUICKTIME_VERSION =
72 !X_UA[ 'IE' ] || !X_UA[ 'ActiveX' ] ? (function( plugins, k ){
74 if( k.indexOf( 'QuickTime' ) === 0 ) return parseFloat( k.substr( 18 ) ) || 0;
77 })( navigator.plugins ) :
78 !X_UA[ 'IE4' ] && !X_UA[ 'IE5' ] && X_UA[ 'ActiveX' ] ? (function(){
79 var obj = eval( 'var a,e;try{a=new ActiveXObject("QuickTimeCheckObject.QuickTimeCheck.1")}catch(e){}a' ),
80 ver = obj && obj[ 'QuickTimeVersion' ].toString( 16 );
82 return ver ? parseFloat( ver.substr( 0, 3 ) ) / 100 : 0;
86 X_Pulgin_VBS_ENABLED =
87 X_UA[ 'Windows' ] && !X_UA[ 'WinCE' ] && X_UA[ 'IE' ] < 11;
95 'Flash' : X_Pulgin_FLASH_VERSION,
97 'FlashEnabled' : X_Pulgin_FLASH_ENABLED,
99 'Silverlight' : X_Pulgin_SILVER_LIGHT_VERSION,
101 'SilverlightEnabled' : X_Pulgin_SILVER_LIGHT_ENABLED,
103 'Unity' : X_Pulgin_UNITY_VERSION,
105 'UnityEnabled' : X_Pulgin_UNITY_ENABLED,
107 //'QuickTime' : X_Pulgin_QUICKTIME_VERSION,
109 'GearsEnabled' : !!X_Pulgin_GEARS_ENABLED
113 //if( X_Pulgin_GEARS_ENABLED ) alert( 'X_Pulgin_GEARS_ENABLED' );