Was ist der beste Weg, um eine JavaScript-Datei mithilfe eines Skript-Tags einzuschließen?

50

Im Allgemeinen beziehe ich JavaScript-Dateien mit dem folgenden Skript-Tag ein.

<script type="text/javascript" src="somefile.js"></script>

Ich habe auch einige Leute gesehen, die das Sprachattribut verwendet haben.

Heutzutage finde ich viele Leute, die das type-Attribut weglassen. Ich habe das Gefühl bekommen, dass selbst wenn JavaScript die Standard-Skriptsprache ist, ich das type-Attribut weglassen sollte. Wäre es gut, das type-Attribut wegzulassen? Würde es irgendwelche Probleme verursachen?

Cracker
quelle

Antworten:

48

Schauen Sie sich dies als Referenz an (Book of Speed): http://www.bookofspeed.com/chapter3.html

Im Grunde ist es der beste Weg, Ihr gesamtes Javascript in einer Datei namens all.min.js zu kombinieren, die ebenfalls minimiert wird.

In HTML5 würden Sie normalerweise Folgendes tun:

<script src="js/all.min.js"></script>

Wie Sie sehen können, Sie NICHT brauchen das type - Attribut in HTML5, aber Sie tun , in anderen Versionen von HTML und XHTML . In der Spezifikation wird klargestellt, dass Sie das type-Attribut in HTML5 angeben müssen, wenn der Inhalt nicht "text / javascript" ist.

Einige Dinge, an die Sie sich erinnern sollten:

Hinweis:

Wenn Sie einen anderen Typ als text/javascriptden folgenden angeben möchten:

  • "anwendung / ecmascript"
  • "Anwendung / Javascript"
  • "application / x-ecmascript"
  • "Anwendung / x-Javascript"
  • "text / ecmascript" "text / javascript"
  • "text / javascript1.0"
  • "text / javascript1.1"
  • "text / javascript1.2"
  • "text / javascript1.3"
  • "text / javascript1.4"
  • "text / javascript1.5"
  • "text / jscript"
  • "Text / Livescript"
  • "text / x-ecmascript"
  • "text / x-javascript"
  • "text / javascript; e4x = 1"

Die obige Liste stammt von: http://dev.w3.org/html5/spec-author-view/the-script-element.html#scriptingLanguages

Denken Sie daran, dass Sie nicht das Attribut language, sondern nur das Attribut type verwenden würden.

alvincrespo
quelle
2
Und was ist mit dem Sprachattribut? Ist es gut, es anzugeben oder wegzulassen?
Cracker
1
Das Sprachattribut wird in HTML5 nicht unterstützt. Stattdessen wurde es mit dem Typattribut zusammengeführt. Wenn es sich um etwas anderes als "text / javascript" handelt, würden Sie es mithilfe des type-Attributs und einer der folgenden Angaben auf
alvincrespo
Ich habe die Antwort aktualisiert, um meinen obigen Kommentar wiederzugeben.
Alvincrespo
Hat das Einstellen von so etwas text/javascript1.3einen tatsächlichen Effekt, als wenn es weggelassen wird?
Arturo Torres Sánchez