SELFHTML: JavaScript / Objektreferenz / embeds
Author: Redaktion SELFHTML, selfhtml81@selfhtml.org
Description: Welche Aufgaben und Eigenschaften das embeds-Objekt in JavaScript hat.
Keywords: SELFHTML, JavaScript, Objekte, embeds, height, hspace, length, name, pluginUrl, src, width, type, vspace, play
Date: 2005-11-08T02:11:45+01:00

| # embeds
| embeds: Allgemeines zur Verwendung ### Eigenschaften: height (Höhe des eingebetteten Objekts) hspace (horizontaler Abstand des eingebetteten Objekts) length (Anzahl eingebetteter Objekte) name (Name des eingebetteten Objekte) src (Quelle des eingebetteten Objekts) width (Breite des eingebetteten Objekts) type (MIME-Typ des eingebetteten Objekts) vspace (vertikaler Abstand des eingebetteten Objekts) ### Methoden: play() stop()

## embeds: Allgemeines zur Verwendung

Mit dem Objekt `embeds`, das in der JavaScript-Objekthierarchie unterhalb des document-Objekts liegt, haben Sie Zugriff auf alle Multimedia-Elemente, die in einer HTML-Datei mit dem Netscape-Element `<embed>...</embed>` definiert sind. Dabei können Sie z.B. den Abspielvorgang von Sound-Dateien oder Videos dynamisch starten.

Ein neues Objekt dieser Art wird automatisch erzeugt, wenn der Web-Browser eine Multimedia-Referenz nach Netscape-Syntax in der HTML-Datei vorfindet.

Es stehen folgende Arten zur Verfügung, mit JavaScript eine bestimmte Multimedia-Referenz anzusprechen:

### Schema 1 / Beispiel 1:

    document.embeds[#].Eigenschaft
    document.embeds[#].Methode()

    Breite = document.embeds[0].width;

### Schema 2 / Beispiel 2:

    document.embeds["Objektname"].Eigenschaft
    document.embeds["Objektname"].Methode()

    Breite = document.embeds["Demovideo"].width;

### Erläuterung:

Solche Objekte können Sie auf zwei Arten ansprechen:

- mit einer Indexnummer (wie in Schema 1 / Beispiel 1)
  Bei Verwendung von Indexnummern geben Sie `document.embeds` an und dahinter in eckigen Klammern, das wie vielte `embed`-Element in der Datei Sie meinen. Jedes Objekt, das in HTML mit dem `<embed>`-Tag notiert wurde, zählt. Beachten Sie, dass der Zähler bei 0 beginnt, d.h. die erste Multimedia-Referenz sprechen Sie mit `embeds[0]` an, die zweite mit `embeds[1]` usw. Beim Zählen gilt die Reihenfolge, in der die `<embed>`-Tags in der Datei notiert sind.
- mit dem Namen der Referenz (wie in Schema 2 / Beispiel 2)
  Dabei geben Sie mit `document.embeds["Objektname"]` den Namen an, den Sie bei der Definition der Multimedia-Referenz im einleitenden `<embed>`-Tag im Attribut `name` angegeben haben.

### Beachten Sie:

Ob Sie über das `embeds`-Objekt eine Multimedia-Referenz tatsächlich mit JavaScript ansprechen können, hängt zumindest bei Netscape davon ab, wie das Plugin beschaffen ist, das diese Multimedia-Referenz anzeigt oder abspielt. Das Plugin, also das Zusatzprogramm oder Programm-Modul, das etwa für das Abspielen eines Videos oder einer Sound-Datei im Browser zuständig ist, muss über eine Java-Schnittstelle verfügen. Andernfalls erhalten Sie bei Netscape JavaScript-Fehlermeldungen von der Sorte Java object has no field or method named ....

Konqueror 3.3 interpretiert das Objekt `embeds` nicht.

## height

Speichert die Höhe eines eingebundenen Multimediaobjekts.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body onload="alert('Objekthöhe: ' + document.embeds[0].height + ' Pixel')">
    <embed src="breeze.mid" width="300" height="200"></embed><br>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz einer Midi-Datei. Nachdem die HTML-Datei vollständig geladen ist, wird in einem Meldungsfenster die Höhe des referenzierten Objekts ausgegeben. Dazu ist im `<body>`-Tag der Event-Handler `onload` notiert.

## hspace

Speichert die Angabe zum horizontalen Abstand zwischen einer Multimedia-Referenz und ihren nebenliegenden Elementen, wie sie mit dem Attribut `hspace` im `<embed>`-Tag möglich ist.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head><body>
    <embed src="../../../html/multimedia/anzeige/yippee.wav"
      width="200" height="100" hspace="30" align="left"></embed><br>
    <a href="javascript:alert(document.embeds[0].hspace)">hspace anzeigen!</a>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz und einen Verweis. Beim Anklicken des Verweises wird mit alert() der Wert ausgegeben, der im Attribut `hspace` angegeben ist.

### Beachten Sie:

Das Beispiel wird von Opera ab Version 6 nicht mehr interpretiert.

## length

Speichert die Anzahl der eingebetteten Objekte im Dokument.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body onload="alert(document.embeds.length)">
    <embed src="breeze.mid" width="300" height="200" type="audio/x-midi"></embed>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz. Nach dem Laden des Dokumentes wird mit alert() die Anzahl der Multimedia-Elemente ausgegeben.

## name

Speichert den Namen eines eingebetteten Objektes, wie er mit dem Attribut `name` im einleitenden `<embed>`-Tag vergeben worden ist. Wenn die Angabe im HTML-Tag fehlt, enthält die Objekteigenschaft `name` keinen Wert.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body>
    <embed autostart="false" name="Musik" src="breeze.mid" width="300" height="200"></embed>
    <a href="javascript:document.embeds['Musik'].play()">Starten</a>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz und einen Verweis. Nach Anklicken des Verweises wird mit `document.embeds['Musik']` das Multimedia-Element angesprochen und unter Verwendung der Methode play() der Abspielvorgang gestartet.

### Beachten Sie:

Safari kennt das Attribut `name`, unterstützt jedoch nicht die Methode `play()`, sodass das Beispiel nicht funktioniert.

## src

Datenquelle des Multimediaobjektes.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body>
    <embed src="breeze.mid" autostart="true" name="Musik" width="300" height="200"></embed> <br>
    <script type="text/javascript">
    document.write("Download".link(document.embeds["Musik"].src));
    </script>
    </body></html>

### Erläuterung:

Im Beispiel ist eine Multimedia-Referenz definiert. Im nachfolgenden JavaScript-Bereich wird mit der Methode link() ein Verweis ins Dokument geschrieben. Der Methode wird dabei als Verweisziel die Quelldatei der Multimedia-Referenz durch Auslesen der `src`-Eigenschaft mit `document.embeds["Musik"].src` übergeben.

## width

Speichert die Breite eines eingebundenen Multimediaobjekts.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body onload="alert('Objektbreite: ' + document.embeds[0].width + ' Pixel')">
    <embed src="breeze.mid" width="300" height="200"></embed><br>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz einer Midi-Datei. Nachdem die HTML-Datei vollständig geladen ist, wird in einem Meldungsfenster die Breite des referenzierten Objekts ausgegeben. Dazu ist im `<body>`-Tag der Event-Handler `onload` notiert.

## type

Gibt den MIME-Typ der Multimedia-Referenz, so wie er im Attribut `type` definiert wurde, an. Wurde diese Eigenschaft nicht definiert, so enthält die Eigenschaft `null` bzw. `undefined` im Internet Explorer.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body onload="alert('Objekttyp: ' + document.embeds[0].type)">
    <embed src="breeze.mid" width="300" height="200" type="audio/x-midi"></embed><br>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz einer Midi-Datei. Nachdem die HTML-Datei vollständig geladen ist, wird in einem Meldungsfenster der Typ des referenzierten Objekts ausgegeben. Dazu ist im `<body>`-Tag der Event-Handler onload notiert.

## vspace

Speichert die Angabe zum vertikalen Abstand zwischen einer Multimedia-Referenz und ihren darüber- bzw. darunterliegenden Elementen, wie sie mit dem Attribut `vspace` im `<embed>`-Tag möglich ist.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head><body>
    Eine Multimedia-Element<br>
    <embed type="audio/x-wav" src="../../../html/multimedia/anzeige/yippee.wav"
      width="200" height="100" vspace="30" align="left"></embed><br>
    <a href="javascript:alert(document.embeds[0].vspace)">Vertikalen Abstand anzeigen!</a>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz und einen Verweis. Beim Anklicken des Verweises wird mit alert() der Wert ausgegeben, der im Attribut `vspace` angegeben ist.

### Beachten Sie:

Das Beispiel wird von Opera ab Version 6 nicht mehr interpretiert.

## play()

Startet das Abspielen einer Multimedia-Referenz. Der Befehl spricht eine Schnittstelle des Abspielgerätes an. Seine Wirkungsweise ist deshalb immer abhängig vom verwendeten Plugin und steht nicht in jedem Fall zur Verfügung.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body>
    <embed type="audio/x-midi" autostart="false" src="breeze.mid" width="300" height="200"></embed><br>
    <a href="javascript:document.embeds[0].play()">Starten</a>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz und einen Verweis. Nach Anklicken des Verweises wird mit `document.embeds[0].play()` das Multimedia-Element angesprochen und der Abspielvorgang gestartet.

## stop()

Beendet das Abspielen einer Multimedia-Referenz. Der Befehl spricht eine Schnittstelle des Abspielgerätes an. Seine Wirkungsweise ist deshalb immer abhängig vom verwendeten Plugin und steht nicht in jedem Fall zur Verfügung.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title></head>
    <body>
    <embed type="audio/x-midi" autostart="true" src="breeze.mid" width="300" height="200"></embed><br>
    <a href="javascript:document.embeds[0].stop()">Stoppen</a>
    </body></html>

### Erläuterung:

Das Beispiel enthält eine Multimedia-Referenz und einen Verweis. Nach Anklicken des Verweises wird mit `document.embeds[0].stop()` das Multimedia-Element angesprochen und der Abspielvorgang beendet.

| layers
| images

© 2007 Impressum