Skip to content

Einbinden von JavaScript

Einfach!

Nicht ganz. ;-)

Erstmal: In XHTML gibt es kein language-Attribut im script-Element. Statt dessen ist das type-Attribut zu verwenden, in dem man den MIME-Typ angibt.

Nein, der ist nicht text/javascript, sondern korrekter Weise application/x-javascript. Das versteht der InternetExplorer aber nicht. Deshalb verwendet man doch die (unkorrekte) erste Variante.

Auf Robin’s HTML 4.0 Conformance Test → Scripts gibt’s eine Zusammenstellung der verschiedenen JavaScript-MIME-Typen und einen Test für die Browserunterstützung.

In XHTML bindet man JavaScript also wie folgt ein, wenn man das JavaScript lokal verwenden möchte:

<script type="text/javascript">
// <![CDATA[
...
// ]]>
</script>

Wenn man JavaScript aus einer externen Datei einbinden möchte – was ich vorziehe – macht man das so:
<script type="text/javascript" src="externeDatei.js"></script>

Peter-Paul Koch lässt sogar das type-Attribut weg. Dafür verschickt er .js-Dateien als application/x-javascript.

Falls in einem Browser JavaScript abgestellt ist, oder der Browser JavaScript nicht versteht, wird der Inhalt des noscript-Elements angezeigt. Es dient also einem ähnlichen Zweck wie das alt-Attribut bei img-Elementen (also Bildern).

CSS

… würde man übrigens folgendermassen in XTHML (lokal, also in der Datei) einbinden:

<style type="text/css">
/* <![CDATA[ */
...
/* ]]> */
</style>

Siehe hier.

Noch ein Nachtrag: Der Artikel Sending XHTML as text/html Considered Harmful von Ian Hickson geht u.a. auf das korrekte Auskommentieren des Inhalts des script-Elements ein.

{ 5 } Comments

  1. Dao | 2006/6/2 at 10:12 | Permalink

    http://www.rfc-editor.org/rfc/rfc4329.txt

  2. Benjamin Berlin Schmidt | 2006/11/1 at 01:45 | Permalink

    Danke fuer Deinen Artikel!

    Aber (egal):
    Browseruntestützung

    und (wichtiger):

    Viele Gruesse aus Berlin

  3. Benjamin Berlin Schmidt | 2006/11/1 at 02:14 | Permalink

    Entschuldige, habe die Sonderzeichen nicht beachtet:

    Danke fuer Deinen Artikel,

    aber (unwichtig):
    ‘Browseruntestützung’

    und (wichtiger):
    ‘<script type=”text/javascript” src=”externeDatei.js”</script>’

    Viele Gruesse aus Berlin

  4. Steffen | 2006/11/16 at 10:20 | Permalink

    Danke für deine Hinweise…

  5. Benjamin Berwie Schm | 2011/3/2 at 01:51 | Permalink

    Bitteschoen.
    Was man nicht im Kopf hat liest man bei Dir:

    /* <![CDATA[ */ /* ]]> */

    So lande ich auch 5 Jahre spaeter noch hier.
    Is’ ja nett – m/Deine Korrekturen mittels <ins> eingefuegt.
    Gruesse aus …

Post a Comment

Your email is never published nor shared. Required fields are marked *