Ist das Flash-Plugin installier?

von Thomas Salvador.

Die meisten von uns kennen Flash von Macromedia und es wird zunehmend verwendet. (wohl nicht immer sinnvoll, aber man kann alles missbrauchen - das ist ein anderes Thema). Gerät man nun auf eine Site, die Flash verwendet und hat selbst das notwendige Plugin nicht installiert, so bekommt man zumindest von den verbreiteten Browsern den Hinweis, dass es benötigt wird. Man kann es dann downloaden oder auch nicht.

Insgesamt ist das unschön. Vielmehr sollte die Site erkennen, ob der Besucher Flash sehen kann oder nicht und entsprechend darauf reagieren, also z.B. direkt zu einer Nicht-Flash-Seite verzweigen. Ein Hinweis, dass es noch etwas mit Flash gibt, ist ausreichend.

Insbesondere ist die Erkennung dann zwingend, wenn Flash nicht nur als Intro, sondern auf der gesamten Site verwendet wird, weil man sonst ohne Flash nicht mehr durchkommt. (Dies ist vergleichbar mit dem Effekt, wenn man JavaScript erzwingt und alle ohne JS ausschließt - nicht gut.)

Der Source

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

function flashdetected() {
// NS-only, IE liefert false. Updates unter
// https://www.brauchbar.de/artikel/sonstiges/ist-das-flash-plugin-installiert

if ( navigator.mimeTypes
  && navigator.mimeTypes["application/x-shockwave-flash"]
  && navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin
  && navigator.plugins
  && navigator.plugins["Shockwave Flash"]) {
    return true;
  } else {
    return false; }
  }

//-->

document.write("Flash wird unterst&uuml;tzt: "+flashdetected());
</script>

Die Abfrage wird in dieser Form vom IE ignoriert, so dass dort immer false geliefert wird.

Die Dokumentation

Das Script läuft, wie zu sehen, in JavaScript, ob der passende Mimetyp existiert und ob das Plugin aktiviert ist.

Das Beispiel

Auf NS gibt es die Antwort ob man mit Flash klar kommt, auf IE immer false. (s.o.)