Christian Seiler: Modif. des Sitemap Scripts von Lutz Eymers (Feature-Artikel)

Beitrag lesen

Hallo ole,

Du musst Dir überlegen, wie Du die Bilder speicherst. Am besten, die Funktion Note bekommt den Dateinamen des Bildes übergeben und diese speichert ihn dann nicht direkt im Array, sondern erzeugt erst mal ein Image daraus:

function Note (...) {
...
var img_on = new Image ()
var img_off = new Image ()
img_on.src = bildon
img_off.src = bildoff
treeBildOn[ idx ] = img_on
treeBildOff[ idx ] = img_off
idx++
}

Eventuell kannst Du noch eine Abfrage einbauen, dass das passiert:

if (bildon == "") bildon = "folder_on.gif"
if (bildoff == "") bildoff = "folder_off.gif"

(vor der Zeile img_on.src) Dann wird auf die Default-Images zurückgegriffen.

Du musst dann noch die Funktion initDiv bearbeiten, dass dort, wo das Bild "folder_off.gif" ausgegeben wird, statt treeBildSonstwas[ i ].src statt des hardgecodeten Namens verwendet wird.

Hier die zwei modifizierten Funktionen load_all, gif_on und gif_off (die Funktion load_gif und gif_name kannst Du Dir sparen):

function load_all () {
  file_last = new Image( 30,16 )
  file_last.src = "file_last.gif"
  file_middle = new Image( 30,16 )
  file_middle.src = "file.gif"
  file_vert = new Image( 30,16 )
  file_vert.src = "file_vert.gif"
  file_empty = new Image( 30,16 )
  file_empty = "file_empty.gif"
}

function gif_on ( id ) {
  document.images['folder' + id].src = treeBildOn[ id2treeIndex[id] ].src
}

function gif_off ( id ) {
  document.images['folder' + id].src = treeBildOff[ id2treeIndex[id] ].src
}

(Ich verstehe den gebrauch von eval() im Originalsource nicht, aber naja)

Ich hoffe, ich hab' jetzt nicht Mist gebaut und nichts vergessen. :)

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