Listen ausklappen wie Windows-Explorer-Ordneransicht

martinibook

Aktives Mitglied
Thread Starter
Mitglied seit
20.08.2005
Beiträge
8.741
Hallo,

Ich habe auf einer Webseite einige Listen untereinander, die jeweils um 30 Einträge haben. Ich möchte das gerne so machen, dass zuerst nur die Oberpunkte sichtbar sind und auf einen Klick sich die Liste ausklappt und man alle Unterpunkte sichtbar sind.

Wie mache ich das möglichst einfach?

Martin
 

ThaHammer

Aktives Mitglied
Mitglied seit
01.06.2004
Beiträge
3.304
onmousedown() als Funktion die das ein- und Ausklappen steuert. Dann natürlich erst einmal alles per css auf visible: hidden; stellen. Bei klick musst Du per Javaskript von hidden auf show stellen, dabei den rest immer ausblenden
 

cronix

Mitglied
Mitglied seit
29.12.2006
Beiträge
90
wieso onMousedown?

und ich würde nicht visible nehmen sondern display:none (weg) display:block (da)
 

ThaHammer

Aktives Mitglied
Mitglied seit
01.06.2004
Beiträge
3.304
cronix schrieb:
wieso onMousedown?

und ich würde nicht visible nehmen sondern display:none (weg) display:block (da)
Wer lesen kann ist klar im Vorteil. Schau halt was er will. :D
Warum würdest Du display nehmen?
 

cronix

Mitglied
Mitglied seit
29.12.2006
Beiträge
90
jah er will jah net das er auf "mausw nach unten" sein menü ausklappen sindern durch einen "klick".

Display:none hat sich bei mir einfach bewährt. Ich finde das das die sauberere vraiante ist denn das element ist dann wirklich nicht da und bei visible ist es nur unsichtbar.
 

Holly73

Mitglied
Mitglied seit
06.04.2006
Beiträge
468
Also ich würde aber anstatt onmousedown onmouseup nehmen. Das ist dann eher so wie bei allem anderen anklickbaren Zeugs.
 

cronix

Mitglied
Mitglied seit
29.12.2006
Beiträge
90
Holly73 schrieb:
Also ich würde aber anstatt onmousedown onmouseup nehmen. Das ist dann eher so wie bei allem anderen anklickbaren Zeugs.

er schreibt doch klick... wieso dann überhaupt "onmouseirgendwas"
 

ThaHammer

Aktives Mitglied
Mitglied seit
01.06.2004
Beiträge
3.304
cronix schrieb:
er schreibt doch klick... wieso dann überhaupt "onmouseirgendwas"
Wie willst Du sonst den Klick abfangen? ;)

Ja das mit dem Display leuchtet mir ein. Bei mir war es bisher so, das das ausgeblendete geschwebt ist über dem Rest, da ist es dann egal. Wenn der Inhalt nicht schwebt ist display natürlich die Lösung!
 

martinibook

Aktives Mitglied
Thread Starter
Mitglied seit
20.08.2005
Beiträge
8.741
Ich habe jetzt folgendes:

HTML:
<div class="text" id=liste1 style="display: block">
und
HTML:
<a href="javascript:DivStatus('1');">
und
PHP:
Pdiv.style.display = Pdiv.style.display == 'block'?'none':'block';
 

cronix

Mitglied
Mitglied seit
29.12.2006
Beiträge
90
aus dem murks werde ich nicht schlau ...

ich würde onClick verwenden

HTML:
onClick="switch(die id des divs)"
javascript:
PHP:
function switch(id){
    status = document.getElementById(id).style.display; 
    if(status == block){
         document.getElementById(id).style.display = 'none';
    }else{
         document.getElementById(id).style.display = 'block';
    }  
}
 
Zuletzt bearbeitet:

martinibook

Aktives Mitglied
Thread Starter
Mitglied seit
20.08.2005
Beiträge
8.741
Ich habe eine DIV, die wird über einen außenstehenden A angesteuert.
 

martinibook

Aktives Mitglied
Thread Starter
Mitglied seit
20.08.2005
Beiträge
8.741
Jaja, ich habe eine funktionierende Lösung.
 
Oben