Flash判別のJavascript


以下の Javascript を <head> と </head> の間に入れます。

<script language="JavaScript">
<!--

function SymError()
{
  return true;
}

window.onerror = SymError;

var SymRealWinOpen = window.open;

function SymWinOpen(url, name, attributes)
{
  return (new Object());
}

window.open = SymWinOpen;

//-->
</script>

<script language="JavaScript" type="text/javascript"><!--
	
		//FlashPleyerバージョンチェックスクリプト
		//ScriptedBy kiara_umu http://www.interq.or.jp/japan/satoshi0/sample/
		
		var flashVersion=false;
		var nn=(navigator.appName.charAt(0)=="N");
		var n6=(document.getElementById && nn) || false;
		var ie=(document.all && !nn) || false;
		var mac=(navigator.userAgent.indexOf("Mac")!=-1) || false;
		var ver=""+navigator.appVersion;
		var fno=ver.indexOf(" ");
		var macChecked=0;
		ver=eval(ver.substring(0,fno));
		
		if (ie && !mac)
		{
			var flashVersion=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").FlashVersion();
        	flashVersion=Math.floor(flashVersion / 0x10000);
		}
		
		if (!flashVersion)
		{
			if (nn && !document.plugins) flashVersion=false;
			else if ((nn || n6) && navigator.plugins) flashVersion=navigator.plugins["Shockwave Flash"].description.charAt(16);
			else flashVersion=false;
		}
		
		if (ie && mac) window.onload=chkMac;
		
		function chkMac()
		{
			if (window["sample"]) flashVersion=((window["sample"].FlashVersion() & 0xffff0000) >> 16);
			macChecked=1;
			result();
		}
function result()
		{
			if (mac && ie && macChecked==0) return;
			if (!flashVersion) location.replace("(1)http://ugawalab.miyakyo-u.ac.jp/F5/kana/eec/eec/eec_sample4.htm");
			else if (flashVersion<=4) location.replace("(2)http://ugawalab.miyakyo-u.ac.jp/F5/kana/eec/eec/eec_sample4.htm");
			else if (flashVersion>=5) location.replace("(3)http://ugawalab.miyakyo-u.ac.jp/F5/kana/eec/eec/top.html");
			else location.replace("(4)http://ugawalab.miyakyo-u.ac.jp/F5/kana/eec/eec/eec_sample4.htm");
		}

	//--></script>
	
	<script language="JavaScript"><!--
	
		//分岐処理実行
		setTimeout("result();",0);
	
	//--></script>
	

(1)は Flashがインストールされていない場合に飛ぶページのアドレス
(2)は Flashのバージョンが4以下の場合に飛ぶページのアドレス
(3)は Flashのバージョンが5以上の場合に飛ぶページのアドレス
(4)は (1)〜(3)のどの場合に当てはまらないときに飛ぶページのアドレス
 です。