Enrico: Höhe eines <ul>-Elementes ermitteln

Beitrag lesen

Was wäre denn Deiner Meinung nach der richtige Weg zum Befüllen der Listen?

Aktuell erledige ich das über folgende Funktion:

function Auswahllisten_aufbauen (Film)
   {
      var Array_Anfangsbuchstaben = new Array ();
      var Array_Genres            = new Array ();
      var Array_FSK               = new Array ();
      var Array_Darsteller        = new Array ();
      var Array_Produzenten       = new Array ();
      var Array_Regisseure        = new Array ();

var Liste_Anfangsbuchstaben = "";
      var Liste_Genres            = "";
      var Liste_FSK               = "";
      var Liste_Darsteller        = "";
      var Liste_Produzenten       = "";
      var Liste_Regisseure        = "";

for (var i = 0; i < Film.length; i++)
      {
         var Neuer_Eintrag = Film[i]["Titel"].substring(0,1);

if (is_numeric (Neuer_Eintrag))
         {
            Neuer_Eintrag = "#";
         }

if (! Array_Anfangsbuchstaben.contains (Neuer_Eintrag))
         {
            Array_Anfangsbuchstaben.push(Neuer_Eintrag);
         }

if (! Array_Genres.contains (Film[i]["Genre"]))
         {
            Array_Genres.push(Film[i]["Genre"]);
         }

if (! Array_FSK.contains (Film[i]["FSK"]))
         {
            Array_FSK.push(Film[i]["FSK"]);
         }

for (var j = 0; j < Film[i]["Darsteller"].length; j++)
         {
            if (! Array_Darsteller.contains (Film[i]["Darsteller"][j]))
            {
               Array_Darsteller.push(Film[i]["Darsteller"][j]);
            }
         }

for (var j = 0; j < Film[i]["Produzenten"].length; j++)
         {
            if (! Array_Produzenten.contains (Film[i]["Produzenten"][j]))
            {
               Array_Produzenten.push(Film[i]["Produzenten"][j]);
            }
         }

for (var j = 0; j < Film[i]["Regisseure"].length; j++)
         {
            if (! Array_Regisseure.contains (Film[i]["Regisseure"][j]))
            {
               Array_Regisseure.push(Film[i]["Regisseure"][j]);
            }
         }
      }

Array_Anfangsbuchstaben.sort (Sortierung_alphabetisch);
      Array_Genres.sort (Sortierung_alphabetisch);
      Array_FSK.sort (Sortierung_numerisch);
      Array_Darsteller.sort (Sortierung_alphabetisch);
      Array_Produzenten.sort (Sortierung_alphabetisch);
      Array_Regisseure.sort (Sortierung_alphabetisch);

for (var i = 0; i < Array_Anfangsbuchstaben.length; i++)
      {
         Liste_Anfangsbuchstaben += '<li><a onclick="Tabelle_filtern (Film, 'Anfangsbuchstabe', '' + Array_Anfangsbuchstaben[i] + '')">' + Array_Anfangsbuchstaben[i] + '</a></li>';
      }

for (var i = 0; i < Array_Genres.length; i++)
      {
         Liste_Genres += '<li><a onclick="Tabelle_filtern (Film, 'Genre', '' + Array_Genres[i] + '')">' + Array_Genres[i] + '</a></li>';
      }

for (var i = 0; i < Array_FSK.length; i++)
      {
         Liste_FSK += '<li><a onclick="Tabelle_filtern (Film, 'FSK', '' + Array_FSK[i] + '')">' + Array_FSK[i] + '</a></li>';
      }

for (var i = 0; i < Array_Darsteller.length; i++)
      {
         Liste_Darsteller += '<li><a onclick="Tabelle_filtern (Film, 'Darsteller', '' + Array_Darsteller[i] + '')">' + Array_Darsteller[i] + '</a></li>';
      }

for (var i = 0; i < Array_Produzenten.length; i++)
      {
         Liste_Produzenten += '<li><a onclick="Tabelle_filtern (Film, 'Produzenten', '' + Array_Produzenten[i] + '')">' + Array_Produzenten[i] + '</a></li>';
      }

for (var i = 0; i < Array_Regisseure.length; i++)
      {
         Liste_Regisseure += '<li><a onclick="Tabelle_filtern (Film, 'Regisseure', '' + Array_Regisseure[i] + '')">' + Array_Regisseure[i] + '</a></li>';
      }

var Auswahl_Anfangsbuchstabe = window.document.getElementById ("Auswahl_Anfangsbuchstabe");
      var Auswahl_Genre            = window.document.getElementById ("Auswahl_Genre");
      var Auswahl_FSK              = window.document.getElementById ("Auswahl_FSK");
      var Auswahl_Darsteller       = window.document.getElementById ("Auswahl_Darsteller");
      var Auswahl_Produzent        = window.document.getElementById ("Auswahl_Produzent");
      var Auswahl_Regisseur        = window.document.getElementById ("Auswahl_Regisseur");

Auswahl_Anfangsbuchstabe.innerHTML = Liste_Anfangsbuchstaben;
      Auswahl_Genre.innerHTML            = Liste_Genres;
      Auswahl_FSK.innerHTML              = Liste_FSK;
      Auswahl_Darsteller.innerHTML       = Liste_Darsteller;
      Auswahl_Produzent.innerHTML        = Liste_Produzenten;
      Auswahl_Regisseur.innerHTML        = Liste_Regisseure;
   }

Wobei Film mein assoziatives Array mit Unter-Arrays ist.

Gruß
Enrico