Tobias Kloth: script kürzen

Beitrag lesen

Hallo,

function download()
 {
  document.getElementById("divindex").style.visibility = "hidden";
  [...]
  document.getElementById("divkontakt").style.visibility = "hidden";
  document.getElementById("divdownload").style.visibility = "visible";
 }

du hast immer die gleichen Kategorien(?) von denen immer eine eingeblendet werden soll, und alle anderen ausgeblendet. Da könntest du alle vorhandenen IDs in ein Array schreiben, dieses Array dann durchlaufen und alle auf unsichtbar setzen. Der Funktion wird dann immer eine Variable übergeben, und das Element mit dieser ID wird dann eingeblendet (entweder in der Schleife oder dannach):

function foo(zuzeigendeid){
  var ids = new Array('divindex','divmich','divfoto','divtest','divgaeste','divkontakt','divdownload');
  for(var i=0;i<ids.length;i++){
    document.getElementById(ids[i]).style.visibility = ids[i]==zuzeigendeid?'visible':'hidden';
  }
}

dabei bewirkt "ids[i]==zuzeigendeid?'visible':'hidden';", dass der Eigenschaft visibility der Wert 'visible' zugewiesen wird, wenn ids[i] gleich der übergebenen (einzublendenden) ID ist, ansonsten bekommt sie den Wert 'hidden'.

aufgerufen wird das ganze einfach mit: foo('divdownload'); (das entspricht deiner Funktion download())

Grüße aus Nürnberg
Tobias

--
Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|