Thomas Schmidt-Uhlig: Erfahrungen mit externen Javascript-Dateien?

Ich programmiere derzeit eine recht umfangreiche Homepage, in der häufig dieselben Javascript-Funktionen verwendet werden.

Wie sinnvoll ist es nun, diese Funktionen in .js-Dateien auszulagern und in den Dokumenten aufzurufen? Zum einen möchte ich so Festplattenplatz sparen, zum anderen aber auch den Aufwand für das Überarbeiten reduzieren.
Was ist dabei zu beachten, welche Browser machen Probleme, gibt es Tips dazu?

Schon mal herzlichen Dank für Eure Antworten.

  1. Hallo Thomas

    Wie sinnvoll ist es nun, diese Funktionen in .js-Dateien auszulagern und in den Dokumenten aufzurufen? Zum einen möchte ich so Festplattenplatz sparen, zum anderen aber auch den Aufwand für das Überarbeiten reduzieren.

    Naja, bei den heutigen Festplattengroessen sind die paar Kilobyte JavaScript wohl nicht so entscheidend. Die Vorteile betreffen eher die Ladezeiten der Dateien und die Schnelligkeit der Code-Ausfuehrung. Wenn eine externe JS-Datei erst mal eingelesen ist, stehen die Funktionen darin schneller zur Verfuegung, als wenn sie in jeder HTML-Datei wieder aufs Neue definiert werden und geladen werden muessen. Externe JS-Dateien machen also auf jeden Fall Sinn, wenn der Code von mehreren oder sogar sehr vielen Projektdateien benoetigt wird, und wenn du damit leben kannst, dass der Browser mindestens JavaScript Level1.1 (= grob: Netscape3.0-Level) unterstuetzt.

    Und was die moderne "Sprachenphilosophie" betrifft, ist es auch sauberer, JS in JS-Dateien, CSS in CSS-Dateien und HMTL in HTML-Dateien zu notieren und durch entsprechendes Einbinden der externen Dateien "das Ganze" zu erzeugen.

    viele Gruesse
      Stefan Muenz

    1. Hallo Thomas und Stefan,

      ich bin der Meinung, daß man externe JS-Dateien überhaupt nicht ernsthaft einsetzen kann.
      Ich hab das mal bei einem großen Projekt versucht, und es gab immer wieder Browser,
      die damit doch nichts anfangen konnten. Ihr glaubt nicht, wie viele verschiedene Versionen
      es alleine vom IE3 gibt!!!

      und wenn du damit leben kannst, dass der Browser mindestens JavaScript Level1.1 (= grob: Netscape3.0-Level) unterstuetzt.

      Zuverlässig funktioniert das erst ab den 4er-Windows-Versionen der beiden bekannten
      Brauserkriegführer.

      Und was die moderne "Sprachenphilosophie" betrifft, ist es auch sauberer, JS in JS-Dateien, CSS in CSS-Dateien und HMTL in HTML-Dateien zu notieren und durch entsprechendes Einbinden der externen Dateien "das Ganze" zu erzeugen.

      Wäre natürlich wirklich schön. Habe ich aber zumindest noch nie in der Praxis wirklich
      auf allen Plattformen durchsetzen können. Es gibt ja schließlich nicht nur DOS mit GUI
      sondern auch noch sowas wie AIX, Solaris, Linux und so'n Zeugs. (Von Äpfeln und ähnlichem
      ganz zu schweigen...)

      Wenn du kein Magengeschwür willst, dann lasses lieber.
      Ist dir nicht vielleicht mit CGI und/oder SSI besser geholfen?

      CYa
      GONZO

      1. Hallo zusammen!

        Ich hab auf unserer Homepage nur gute Erfarungen mit externen JS-Dateien gemacht. Ein externes JS-Script enthält ein mehrdimensionales Array, in welchem unsere Unterseiten mit deren URL, Stichwortliste, usw. aufgeführt sind.
        Diese Datei wird von einer kleinen Suchfunktion,
        und einem Index(zum einblenden) sowie den Unterseiten selber benutzt. Die Unterseiten bestimmen, welche Seite nun vor ihnen und welche nach ihnen kommt(Kreisverweis).
        Nur die Neue URL mit Stichworten usw. in der JS-Datei einfügen, und die Seiten sind immer aktuell.
        Wer alte (veraltete*g*) Browser benutzt, muß halt auf den Luxus verzichten.

        Einziges Problem, das ich habe bekomme ich an einem NT, beim Aufruf zwei externer JS-Dateien gleichzeitig, dann meldet sich irgend ein Doc.. und gibt ne Fehlermeldung.

        Gruß Wilm (alias Wasser)

        1. Wer alte (veraltete*g*) Browser benutzt, muß halt auf den Luxus verzichten.

          Wer auf den Luxus "Kunde mit altem Brauser" verzichten will, bitte.
          Aber gerade auf den IE3 stoße ich oft, da der nunmal in Windows95
          eingebaut ist.

          CYa
          G.