Chräcker Heller: Feldvariabelzuweisungen ausgliedern

Hallo,

ich habe mehrere JS-Scripte für eine Site, die alle den gleichen Feldvariabelnzuweisungsblock haben. (sowas wie:

rubriken[1]=new Array(12,1,8,10,11,12,20,24,31,34,35,51,54);
rubriken[2]=new Array(11,37,47,22,23,18,7,6,4,56,55,58);
rubriken[3]=new Array(6,44,15,14,13,32,16);

)

Nun wollte ich den blauäugig ausgliedern und dann in jedes Script "irgendwie" (;-)) wieder einbinden. Damit ich diese Zuweisungen nur an einer Stelle pflegen muß. Simpel, wie ich gestrickt bin, habe ich aus diesen Zuweisungen ein neues js gebastelt und in die jeweiligen Seiten vor den eigentlichen Scripten eingebunden. Was nicht geht. (Scheint ja auch logisch, ein versuch wars aber wert....)

Wer kann mir das Brett vorm Kopf wegnehmen?

Chräcker

  1. Hallo Chräcker,

    mußt Du in die js-Datei am Anfang
    rubriken=new Array();
    reinschreiben und aus der HTML-Datei rausnehmen.
    Ich hoffe, der Tip hellt Dich auf ;-)
    MfG. Lutz T.

    Hallo,

    ich habe mehrere JS-Scripte für eine Site, die alle den gleichen Feldvariabelnzuweisungsblock haben. (sowas wie:

    rubriken[1]=new Array(12,1,8,10,11,12,20,24,31,34,35,51,54);
    rubriken[2]=new Array(11,37,47,22,23,18,7,6,4,56,55,58);
    rubriken[3]=new Array(6,44,15,14,13,32,16);

    )

    Nun wollte ich den blauäugig ausgliedern und dann in jedes Script "irgendwie" (;-)) wieder einbinden. Damit ich diese Zuweisungen nur an einer Stelle pflegen muß. Simpel, wie ich gestrickt bin, habe ich aus diesen Zuweisungen ein neues js gebastelt und in die jeweiligen Seiten vor den eigentlichen Scripten eingebunden. Was nicht geht. (Scheint ja auch logisch, ein versuch wars aber wert....)

    Wer kann mir das Brett vorm Kopf wegnehmen?

    Chräcker

    1. Hallo,

      ...das hätte ich mir zugetraut, aber ein Blick zeigt mir, daß ich das "natürlich" hatte ,-)

      "Trotzdem" kann das eine ausgalgerte JS nicht auf die variabeln des anderen ausgelagerten JS zugreifen....

      Noch (eine/r) eine idee ? (Aber Danke, das wäre mir zuzutrauen gewesen ,-))

      Chräcker

      1. Hallo nochmal,
        das hab ich doch gleich mal getestet, und bei mir gehts (im IE 5.5 und NN 6.1):

        <html><head>
        <script language="JavaScript" src="test1.js"></script>
        <script language="JavaScript" src="test2.js"></script>
        </head>
        <body>
        <form>
        <input type=button value="Klick mich" onClick="ButtonClick()">
        </form>
        </body>
        </html>

        test1.js enthält:
        TestArray=new Array(1,2,3);

        test2.js enthält:
        //TestArray[1]=5; //wahlweise ein- oder auskommentieren
        function ButtonClick()
        { alert(TestArray[1]);
        }

        Muß Dein Problem wohl woanders liegen. Wahrscheinlich sollen die script-Dateien schon beim Laden aufeinander zugreifen und die Datein sind noch nicht alle geladen.
        MfG. Lutz T.

        Hallo,

        ...das hätte ich mir zugetraut, aber ein Blick zeigt mir, daß ich das "natürlich" hatte ,-)

        "Trotzdem" kann das eine ausgalgerte JS nicht auf die variabeln des anderen ausgelagerten JS zugreifen....

        Noch (eine/r) eine idee ? (Aber Danke, das wäre mir zuzutrauen gewesen ,-))

        Chräcker

  2. Hi Chräcker

    Also das geht sicher! Mach ich auch immer so, zuletzt in der Jonglierwerkstatt. Kannst Du das ganze nicht mal online stellen, damit man sich das mal anschauen kann?

    Liebe Grüße
    Pipolino

  3. Hallo Chräcker,

    ich hoffe, ich hab' das richtig verstanden...

    datei.js

    var variable = 'wert';

    nicht-funktionierende-datei.html:

    ...
    <script type="text/javascript">
    <!--
      document.write (variable);
    //-->
    </script>
    ...

    funktionierende-datei.html

    ...
    <script type="text/javascript">
    <!--
      var variable;
      document.write (variable);
    //-->
    </script>
    ...

    Darauf wolltest Du doch hinaus, oder?

    Grüße,

    Christian

    --
    Sollen sich alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen und nicht mehr davon erfasst haben als eine Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst.
                          -- Albert Einstein
  4. Hallo,

    Danke! eure Beharlichkeit, daß das aber gehen müste, hat genau das bewirkt, was es sollte: das Brett ist vom Kopf. ich hatte "doch" vergessen, im ausgegliedertem Variblenzuweisungsscript eine nötige variabel "anzuschupsen".... (Also Lutz vermutung....)

    Danke, und ja, es funktioniert ,-)))

    Chräcker