Hi, hab mal eine Frage zu meinen Menü. Bekomme langsam Platzprobleme und würde gerne dieses Menü beim Klick auf einen Menüpunkt prüfen lassen, ob andere Menüpunkte oofen sind und wenn ja dann schließen. st das leicht machbar?? Würde das Menü gern weiterhin benutzen!!!
Hier mal der Quellcode:
<!–
#foldheader{cursor:stuck_out_tongue:ointer;cursor:hand ; font-weight:bold ;
//list-style-image:url(fold.gif)}
#foldinglist{list-style-image:url(list.gif)}
//–>
<!–
//Smart Folding Menu tree- By Dynamic Drive (rewritten 03/03/02)
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use
var head=„display:’’“
img1=new Image()
img1.src=„fold.gif“
img2=new Image()
img2.src=„open.gif“
var ns6=document.getElementById&&!document.all
var ie4=document.all&&navigator.userAgent.indexOf(„Opera“)==-1
function checkcontained(e){
var iscontained=0
cur=ns6? e.target : event.srcElement
i=0
if (cur.id==„foldheader“)
iscontained=1
else
while (ns6&&cur.parentNode||(ie4&&cur.parentElement)){
if (cur.id==„foldheader“||cur.id==„foldinglist“){
iscontained=(cur.id==„foldheader“)? 1 : 0
break
}
cur=ns6? cur.parentNode : cur.parentElement
}
if (iscontained){
var foldercontent=ns6? cur.nextSibling.nextSibling : cur.all.tags(„UL“)[0]
if (foldercontent.style.display==„none“){
foldercontent.style.display=""
cur.style.listStyleImage=„url(open.gif)“
}
else{
foldercontent.style.display=„none“
cur.style.listStyleImage=„url(fold.gif)“
}
}
}
if (ie4||ns6)
document.onclick=checkcontained
//–>
Startseite
Links
Über uns
Newsletter
Kontakt
Privatbereich
wenn ich jetzt also auf „Home“ klicke soll er prüfen, ob „Kobolde“ schon offen ist und es dann schließen!
Danke Daniel
Hi Daniel,
\<!--
//Smart Folding Menu tree- By Dynamic Drive (rewritten 03/03/02)
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use
var openFolder=false;
var head="display:''";
img1=new Image();
img1.src="fold.gif";
img2=new Image();
img2.src="open.gif";
var ns6=document.getElementById&&!document.all;
var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1;
function checkcontained(e) {
if (openFolder) openFolder.style.display="none";
var iscontained=0;
cur=ns6?e.target:event.srcElement;
i=0;
if (cur.id=="foldheader")
iscontained=1;
else {
while (ns6&&cur.parentNode||(ie4&&cur.parentElement)) {
if (cur.id=="foldheader"||cur.id=="foldinglist") {
iscontained=(cur.id=="foldheader")?1:0;
break;
}
cur=ns6?cur.parentNode:cur.parentElement;
}
if (iscontained) {
var foldercontent=ns6? cur.nextSibling.nextSibling : cur.all.tags("UL")[0];
if (foldercontent.style.display=="none") {
foldercontent.style.display="";
openFolder=foldercontent;
cur.style.listStyleImage="url(open.gif)";
} else {
foldercontent.style.display="none";
openFolder=false;
cur.style.listStyleImage="url(fold.gif)";
}
}
}
}
if (ie4||ns6) document.onclick=checkcontained;
//--\>
alle Zeilen mit openFolder sind Ergänzungen, wenn jetzt ein Register offen ist, dann wird es erst einmal geschlossen.
Gruß
Christian
Danke aber nicht ganz!
Funktioniert ja schon ganz gut, aber es gibt auch Menüpunkte mit Untermenüs: „Urlaub“ > „Kreta“ > mit Unterpunkt > „Bericht“ und > „Bilder“ sowie „Urlaub“ > „Ibiza“ > mit Unterpunkt > „Bericht“ und > „Bilder“
Mit diesem Code schließt er das Menü > „Urlaub“ wenn ich auf den Punkt z.B. Ibiza klicke, weil er das immer noch als Obermenü wertet. Hoffe das ist verständlich!!!
Hoffe du hast dafür auch noch ne Lösung!?
Ansonsten schon mal Danke
Daniel
Achso und noch dies!
Wenn man dann auf einen Link klickt schließt sich auch das Menü und das sollte auch vermieden werden, denn ich mag meinen Gästen nicht zumuten jedesmal wieder durchs Menü zu surfen, um den 2 Link in dem gleichen Oberpunkt zu suchen. Soll halt nur schließen, wenn auf einen anderen Menüpunkt geklickt wird.
Wenn nötig kannst du dir ja mal einen Überblick verschaffen:
http://www.kobolde2.de
Danke
hat keiner mehr eine Idee???
Keine Idee mehr???
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]