Pluginerkennung: Flash oder Bild anzeigen?

Im Zuge eines Homepage Projekts wurde ich mit Flash konfrontiert. Der Kunde wünschte sich eine Flash Animation auf der Homepage, aber falls der Besucher kein Adobe Flash installiert hat, soll ein Bild dargestellt werden. Nach einer Suche bei Google bin ich auch fündig geworden und will mein Wissen jetzt auch mit euch teilen.

Anbei der Quellcode zur Pluginerkennung:

<script language="javascript" type="text/javascript">
// <!--
// Definitionen

 // Programm
 var vFlash = 6; //minimum Flashversion
 var ver = 0;
 var javaOn = false;
 var ShockMode = 0;
 var plug = 0;
 var gUserOS = OS_Check();
 ver = parseInt(navigator.appVersion.substring(0,1));

 // Welches Betriebssystem?

 function OS_Check()
 {
 var userPlat = "unknown";
 var navInfo = navigator.appVersion;
 if (navInfo.indexOf("Win") != -1)                userPlat = "Win";
 else if (navInfo.indexOf("Macintosh") != -1) userPlat = "PPC";
 else if(navInfo.indexOf("68K") != -1)        userPlat = "68K";
 return userPlat;
 }

 // Flash-Pruefung Netscape Navigator

 function checkNetscape()
 {
 if(navigator.appName == "Netscape")
 {
 for(i=0;i<navigator.plugins.length;i++)
 {
 if(navigator.plugins[i].name == "Shockwave Flash")
 {
 t = navigator.plugins[i].description;
 t = t.split(" ")
 for(z=0;z<t.length;z++)
 {
 if(parseFloat(t[z]) >= vFlash)
 {
 //document.writeln(t[i])
 plug = 1
 break;
 }
 }
 break;
 }
 }
 }

 // Flash-Pruefung Netscape Internet Explorer auf Win95,98,NT
 // keine Pruefung auf Macintosh da keine Active-X-Unterstützung

 else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 &&  navigator.userAgent.indexOf("Win")>=0)
 {

 document.writeln();
 document.write('<Scr'+'ipt lan'+'guage=VB'+'Scr'+'ipt\> \n');
 document.write('on error resume next \n');
 /*Einstellung für den Player, aller die kleiner wie 7 sind werden ignoriert*/

 document.write('ShockMode = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.' + vFlash + '")))\n');
 document.write('</scr'+'ipt>');
 //document.writeln(ShockMode);
 if(ShockMode) plug = 1;
 }
 }

 if(ver == 4)
 {
 if(navigator.javaEnabled()) javaOn = true;
 }

 if(ver > 2) checkNetscape();

//-->
</script>
<SCRIPT Language="Javascript">
<!--
//Einstellungen für die SWF
 if(plug == 1) { document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="250" height="50" id="plugin" align="middle">')
 document.write('<param name="allowScriptAccess" value="sameDomain" />');
 document.write('<param name="movie" value="plugin.swf" />');
 document.write('<param name="quality" value="high" />');
 document.write('<param name="bgcolor" value="#ffffff" />');
 document.write('<embed src="plugin.swf" quality="high" bgcolor="#ffffff" width="250" height="50" name="plugin" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
 document.write('</object> ');}
 //Einstellung für das alternativ Bild
 else { document.write(' <img src="plugin.gif" width="250" height="50">') }
//-->
</SCRIPT>
 <NOSCRIPT>
 <!-- Falls JavaScript deaktiviert, kommt automatisch das Alternativbild -->
 <img src="plugin.gif" width="250" height="50">
 </NOSCRIPT>

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>