JavaScript/Navigator/mimeTypes

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Über das Objekt mimeTypes, das in der JavaScript-Objekthierarchie unterhalb des navigator-Objekts liegt, können Sie ermitteln, welche Dateitypen der Browser des Anwenders kennt, und ob ein Plugin zum Anzeigen oder Abspielen eines Dateityps vorhanden ist. Lesen Sie zum besseren Verständnis von MIME-Typen gegebenenfalls den Abschnitt MIME-Typen.


Eigenschaften


Allgemeines zur Verwendung

Um einen MIME-Typ anzusprechen, stehen folgende Möglichkeiten zur Verfügung:

Beispiel
Schema 1: navigator.mimeTypes[#].Eigenschaft

Schema 2: navigator.mimeTypes["MIME-Typ"].Eigenschaft

MIME-Typen können Sie auf zwei Arten ansprechen:

  • mit einer Indexnummer, wie in Schema 1:

Bei Verwendung von Indexnummern geben Sie navigator.mimeTypes an und dahinter in eckigen Klammern eine Zahl. Sie können allerdings nicht wissen, welche MIME-Typen an welcher Stelle gespeichert sind. Die Verwendung von Indexnummern ist deshalb nur sinnvoll, wenn Sie beispielsweise in einer Schleife alle verfügbaren MIME-Typen ermitteln.

  • mit dem Namen eines MIME-Typs als Indexnamen, wie in Schema 2:

Dabei notieren Sie wie beim Ansprechen mit Indexnummer hinter navigator.mimeTypes eckige Klammern. Innerhalb der eckigen Klammern notieren Sie in Anführungszeichen den MIME-Typ-Namen. Dabei gilt die übliche Notation für MIME-Typen, also die Form "Kategorie/Unterkategorie". Als Indexnamen sind zum Beispiel Werte möglich, die Sie mit der Objekteigenschaft type ermitteln können.

Beispiel ansehen …
var elem = document.getElementById('button');
  elem.addEventListener('click', test);	

function test() {
    var table = document.getElementById("uebersicht");
    for (var i = 0; i < navigator.mimeTypes.length; i++) {	
      var row = table.insertRow(1+i);
      var zelle1 = row.insertCell(0);
      var zelle2 = row.insertCell(1);
      var zelle3 = row.insertCell(2);
      var zelle4 = row.insertCell(3);
      zelle1.innerHTML = navigator.mimeTypes[i].type;
      zelle2.innerHTML = navigator.mimeTypes[i].suffixes;
      zelle3.innerHTML = navigator.mimeTypes[i].description;
      if (navigator.mimeTypes[i].enabledPlugin) {
        zelle4.innerHTML = navigator.mimeTypes[i].enabledPlugin; 
      }
      else {
        zelle4.innerHTML = 'kein Plugin'; 	
      }
    }
}

Die Tabelle besteht nur aus dem Tabellenkopf. Bei einem Klick auf den Button werden alle vorhandenen mimeTypes ausgegeben. Dafür wird in einer Schleife für jeden MimeType dynamisch mit insertRow und insertCell eine Tabellenzeile mit je 4 Tabellenzellen in die vorhandene Tabelle hinzugefügt.

In der linken Spalte steht der MIME-Typ, also die Kategorie/Unterkategorie, wie Sie sie auch zur MIME-Typ-Adressierung mit Hilfe von Indexnamen verwenden können. In der Spalte daneben stehen die zugehörigen Dateiendungen. Daneben steht eine Kurzbeschreibung des MIME-Typs, und in der letzten Spalte steht, ob der Browser ein Plugin besitzt, um Dateien des entsprechenden Typs zu verarbeiten.

Beachten Sie: Welche Eigenschaften im Objekt mimeTypes gespeichert sind, ist stark abhängig vom verwendeten Browser.