Layermenu
Anna2
- javascript
Hallo!
Ich probiere gerade an einem Layer-Menu. Leider klappt das nicht so ganz. Die divs, die man öffnet, werden leider nicht wieder geschlossen. Hier einmal der Quelltext:
<html>
<head>
<title></title>
<SCRIPT language=JavaScript>
// HAUPTNAVIGATION
var ns=window.navigator.appName == "Netscape"
var ie=window.navigator.appName == "Microsoft Internet Explorer"
var timer = null;
function schliessen() {
var items = 1
for (i=0; i<items; i++) {
if(ie) document.all.box[i].style.visibility = "hidden";
if(ns) document.layers[i].visibility = "hide";
}
}
function oeffnen(x) {
if(ns) {
if (timer!=null) clearTimeout(timer);
timer = setTimeout("schliessen()", 3000);
showbox= document.layers[x];
showbox.visibility = "show";
showbox.top=130;
var items = 1;
for (i=0; i<items; i++) {
elopen=document.layers[i];
if ((elopen.visibility = "show")&&(elopen != showbox)) elopen.visibility = "hide";
}
}
if(ie){
showbox = document.all.box[x];
showbox.style.visibility = "visible";
showbox.style.top =131;
var items = 1;
for (i=0; i<items; i++) {
elOpen=document.all.box[i];
if ((elOpen.style.visibility == "visible")&&(elOpen != showbox)) elOpen.style.visibility = "hidden";
}
}
}
</SCRIPT>
<STYLE type=text/css>
a { font-family:Verdana; font-size:10pt; color:black; text-decoration:none; }
A.navigation {
FONT-SIZE: 11px; COLOR: #000000; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
A.navigation:hover {
TEXT-DECORATION: none
}
A:hover {
TEXT-DECORATION: underline
}
TD.navigation {
PADDING-RIGHT: 20px; PADDING-LEFT: 8px
}
TABLE.navigation {
PADDING-RIGHT: 20px
}
TABLE.navigation {
FILTER: Alpha(opacity=90, finishopacity=90, style=1)
}
</STYLE>
</head>
<body style="margin:100;">
<SPAN
id=box style="top:10px; VISIBILITY:hidden; POSITION:absolute">
<TABLE class=navigation cellSpacing=0 cellPadding=3 bgColor=#ffe0a7 border=0>
<TBODY>
<TR onmouseover="this.style.backgroundColor='#FFC14E'"
onmouseout="this.style.backgroundColor='#FFE0A7'">
<TD class=navigation><A class=navigation
href="">DEMO</A></TD></TR></TBODY></TABLE>
</span>
<SPAN
id=box style="top:10px; VISIBILITY:hidden; POSITION:absolute">
<TABLE class=navigation cellSpacing=0 cellPadding=3 bgColor=#ffe0a7 border=0>
<TBODY>
<TR onmouseover="this.style.backgroundColor='#FFC14E'"
onmouseout="this.style.backgroundColor='#FFE0A7'">
<TD class=navigation><A class=navigation
href="">DEMO</A></TD></TR></TBODY></TABLE>
</span>
<TABLE height=42 cellSpacing=0 cellPadding=0 width=702 border=0>
<TBODY>
<TR>
<TD><A onmouseover=oeffnen(0) href="">DEMO</A></TD></TR></TBODY></TABLE>
</body>
</html>
Könnt ihr den Fehler finden?
Danke jedenfalls für eure Hilfe! :)
Anna2
Hallo!
Ich probiere gerade an einem Layer-Menu. Leider klappt das nicht so ganz. Die divs, die man öffnet, werden leider nicht wieder geschlossen. Hier einmal der Quelltext:
...
<TD><A onmouseover=oeffnen(0) href="">DEMO</A></TD></TR></TBODY></TABLE>
</body>
</html>
Könnt ihr den Fehler finden?
Ja, hier fehlt ein onouseout.
...
<TD><A onmouseover="oeffnen(0);" onmouseout="schliessen();" href="">DEMO</A></TD></TR></TBODY></TABLE>
</body>
</html>
Danke jedenfalls für eure Hilfe! :)
Anna2
Ohne JavaScript-Kenntnisse wirst Du das aber trotzdem nicht zufriedenstellend zum Laufen bringen. Erstmal ist das Script wahrscheinlich älter als die Polizei (W3C) erlaubt. Netscape 6.x und höher werden es gar nicht ausführen. Zweitens ist es syntaktisch sehr kritisch (fehlende Anführungszeichen, fehlende Semikola, GROSSSCHREIBUNG und kleinschreibung wild vermischt...). Du wirst also nicht umhin kommen, Dich langsam (bei SelfHTML) in HTML, CSS und JavaScript einzuarbeiten.
viele Grüße
Axel