Martin Jung: Auslagerung in .js-Datei

Hi Forum,

folgende Frage:
Ich benutze ich mehreren HTML-Files diesselben Javascipt-Funktionen. Um Redundanzen zu vermeiden, habe ich diese in eine .js-Datei ausgelagert.
Eines dieser Skripte definiert eine "SwapImage"-Funktion für Rollover-Images.
Gehört jetzt das Vorladen der Bilder via "new Image" auch in diese .js-Datei oder verbleiben diese Script-Anweisungen im HTML-File, in welchem sie tatsächlich benötigt werden?
Wenn nicht, werden dann die Bilder vorgeladen, sobald zum ersten mal irgendeine Script-Funktion aufgerufen wird (sprich, die .js-Datei zum ersten mal "angefordert" wird), oder erst wenn die Seite mit den entsprechenden Rollovers geladen wird?

Danke im voraus

Grüße, Martin

  1. Moin Martin,

    Wenn nicht, werden dann die Bilder vorgeladen, sobald zum ersten mal irgendeine Script-Funktion aufgerufen wird (sprich, die .js-Datei zum ersten mal "angefordert" wird), oder erst wenn die Seite mit den entsprechenden Rollovers geladen wird?

    wenn du das Vorladen in die .js-Datei verlagerst, werden alle Images vorgeladen, sobald diese Datei vom Server abgeholt wird, wenn sie in den HTML-Files bleiben werden sie geladen, sobald diese Seite aufgerufen wird.

    Gehört jetzt das Vorladen der Bilder via "new Image" auch in diese .js-Datei oder verbleiben diese Script-Anweisungen im HTML-File, in welchem sie tatsächlich benötigt werden?

    Ich würde auf jeden Fall das Vorladen in den HTML-Files empfehlen, da sonst beim ersten Aufruf einer Seite _alle_ Grafiken vorgeladen würden. Weiterhin ist es so, daß (wenn du nicht irgendeine Abfrage einbaust, ob die Grafiken schon vorhanden sind) bei jedem Seitenwechsel oder Reload das JavaScript wieder ausgeführt wird, und damit auch _wieder_ alle Grafiken geladen werden.

    Bei solchen Datenmengen würde sich wahrscheinlich auch der gutmütigste Besucher schnell wieder von deinen Seiten verabschieden...

    Gruß
    Dirk

    1. Hi Dirk,

      erst einmal: Danke :-)

      Ich würde auf jeden Fall das Vorladen in den HTML-Files empfehlen, da sonst beim ersten Aufruf einer Seite _alle_ Grafiken vorgeladen würden. Weiterhin ist es so, daß (wenn du nicht irgendeine Abfrage einbaust, ob die Grafiken schon vorhanden sind) bei jedem Seitenwechsel oder Reload das JavaScript wieder ausgeführt wird, und damit auch _wieder_ alle Grafiken geladen werden.

      ok, ich schreibe dann:

      <script language="Java.." src="xxx.js" ....>
      <!--
      xxxx = New Image...
      :
      :
      :
      :
      //-->
      <script>

      und später im body dann den Aufruf der Swap-Funktion, die aber in der .js-Datei steht?

      Gruß, Martin

      1. Moin Martin,

        ok, ich schreibe dann:

        <script language="Java.." src="xxx.js" ....>
        <!--
        xxxx = New Image...
        :
        :
        :
        :
        //-->
        <script>

        nicht ganz, du müsstest zwei JavaScript-Bereiche daraus machen:

        <script language="Java.." src="xxx.js" ....>
        </script>

        <script language="Java..">
        <!--
        xxxx = New Image...
        :
        :
        :
        :
        //-->
        </script>

        und später im body dann den Aufruf der Swap-Funktion, die aber in der .js-Datei steht?

        genau!

        Gruß
        Dirk