Ron: Array

Guten Abend,

ich bin den ganzen Tag so mit Code beschäftigt, dass ich den Wald vor lauter Bäumen nicht mehr sehe.

Mein Problem:

Habe folgendes Array........................................

var seknavi = new Array(6)
seknavi[0] = new Array()
seknavi[1] = new Array()
seknavi[2] = new Array()

//First SekNavi
seknavi[0][0] = "Grundlagen"; //Primary Point
seknavi[0][1] = "Einleitung";
seknavi[0][2] = "Was ist Testing?";
seknavi[0][3] = "Der Testing-Ablauf";
seknavi[0][4] = "Testing";
seknavi[0][5] = "Quiz";
//Second SekNavi
seknavi[1][0] = "Vorbereitung"; //Primary Point
seknavi[1][1] = "Drehbuch"; ------------------------>AKTUELLE SEITE 6
seknavi[1][2] = "Testing-Parameter";
seknavi[1][3] = "Tipps & Tricks";
seknavi[1][4] = "Quiz";
//Third SekNavi
seknavi[2][0] = "Testing Inhalt"; //Primary Point
seknavi[2][1] = "Drehbuch und Anwendung";
seknavi[2][2] = "Formatierungen";
seknavi[2][3] = "Quiz";

Ich möchte immer Wissen auf welcher Seite ich mich befinde.
Primary Points werden nicht berücksichtig bei der Zählung.

Habe 2 Variablen:
Chapter // Aktuelle Kapitel
Site   //  Aktuelle Seite

Beispiel:

Chapter 1 Site 1 wäre seknavi[1][1] = Drehbuch

Ich schaffe es leider nicht so durch das Array zu itterieren, dass ich sagen kann "Drehbuch" bzw. "seknavi[1][1]" == Seite 6

Wäre für jede Hilfe zu dieser Stunde sehr Dankbar

  1. Hi Ron,

    Sieht nach einem JS-Menü aus... Versuch es doch mal mit CSS.

    Viele Grüße aus Freiburg,
    Marian

    --
    Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) n4:( ss:) de:] js:| ch:? mo:} zu:)
    <!--[if IE]><meta http-equiv="refresh" content="0; URL=http://www.getfirefox.com"><[endif]-->
    1. Hi Ron,

      Sieht nach einem JS-Menü aus... Versuch es doch mal mit CSS.

      Nun ja, CSS berechnet mir aber keine Zahlen :(.
      Muss Javascript sein.

      Gruß
      Ron

  2. Hi,

    ich würde sagen, verschachtele zwei Schleifen:
    seitenzahl = 0;
    for (kapitel = 0; kapitel <= gesuchtesKapitel; kapitel++) {
       site_grenze = (kapitel == gesuchtesKapitel) ? gesuchteSite : seknavi[kapitel].length()-1;
       for (site = 1; site <= site_grenze; site++)
          seitenzahl++;
    }

    Problem ist halt die Stelle zu entscheiden, ob man alle Einträge des Kapitels durchzählt oder nur bis zum gesuchten. Aber glaub das könnte hinhauen...

    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
  3. Ich schaffe es leider nicht so durch das Array zu itterieren, dass ich sagen kann "Drehbuch" bzw. "seknavi[1][1]" == Seite 6

    Wie kommst du auf die 6?

    Struppi.

  4. Guten Abend,

    Hallo

    var seknavi = new Array(6)

    Ok, seknavi[0] ist also 6

    seknavi[0] = new Array()

    Jetzt nicht mehr, jetzt ist es array()

    Ich schaffe es leider nicht so durch das Array zu itterieren, dass ich sagen kann "Drehbuch" bzw. "seknavi[1][1]" == Seite 6

    Aber die 6 hast du doch überschrieben, oder wie willst du auf die 6 kommen? Sehe ich da was falsch?

    Grüße
    Jasmin

    1. Hallo Jasmin,

      var seknavi = new Array(6)
      Ok, seknavi[0] ist also 6

      nein. Laut http://de.selfhtml.org/javascript/objekte/array.htm wird so ein eindimensionales Array der Länge 6 angelegt. Erst bei mehreren Parametern wird das Array mit diesen initialisiert.

      seknavi[0] = new Array()
      Jetzt nicht mehr, jetzt ist es array()

      So wird ein zweidimensionales Array erzeugt: ein Array von Arrays.

      Gruß, Jürgen