nun ja, ich hab da mal ein problem.
Ich hab für meine noch entstehende Seite eine Menüleiste gebastelt und die funktioniert soweit auch richtig gut. Es gibt da nur noch ein Problem.
Ein Untermenü der Leiste geht mit mouseover auf und zu. Wenn ich jedoch die Seite das erste mal starte ist das menü bereits offen und schließt sich erst, wenn ich mit der Maus über den Trigger gegangen bin. Das will ich vermeiden.
Meine Scripte:
<script type="text/javascript">
if(window.navigator.systemLanguage && !window.navigator.language) {
function hoverIE() {
var LI = document.getElementById("Homer").firstChild;
do {
if (sucheUL(LI.firstChild)) {
LI.onmouseover=einblenden; LI.onmouseout=ausblenden;
}
LI = LI.nextSibling;
}
while(LI);
}
function sucheUL(UL) {
do {
if(UL) UL = UL.nextSibling;
if(UL && UL.nodeName == "UL") return UL;
}
while(UL);
return false;
}
function einblenden() {
var UL = sucheUL(this.firstChild);
UL.style.display = "block"; UL.style.backgroundColor = "white";
}
function ausblenden() {
sucheUL(this.firstChild).style.display = "none";
}
function hoverIE2() {
var LI = document.getElementById("Bart").firstChild;
do {
if (sucheUL(LI.firstChild)) {
LI.onmouseover=einblenden; LI.onmouseout=ausblenden;
}
LI = LI.nextSibling;
}
while(LI);
}
function hoverIE3() {
var LI = document.getElementById("Lisa").firstChild;
do {
if (sucheUL(LI.firstChild)) {
LI.onmouseover=einblenden; LI.onmouseout=ausblenden;
}
LI = LI.nextSibling;
}
while(LI);
}
function hoverIE4() {
var LI = document.getElementById("Marge").firstChild;
do {
if (sucheUL(LI.firstChild)) {
LI.onmouseover=einblenden; LI.onmouseout=ausblenden;
}
LI = LI.nextSibling;
}
while(LI);
}
function hoverIE5() {
var LI = document.getElementById("Krusty").firstChild;
do {
if (sucheUL(LI.firstChild)) {
LI.onmouseover=einblenden; LI.onmouseout=ausblenden;
}
LI = LI.nextSibling;
}
while(LI);
}
function H()
{
window.document.Aufgaben.visibility="hide";
}
window.onload="H";
}
function rausmit(was){
was.style.visibility ="none";
}
function hermit(was){
was.style.visibility ="inline";
}
</script>
und deren Einbindung in das sich öffnende Menü:
<body>
<table width="251">
<tr>
<div border="0" width="250" height="250" ><ul id="Homer">
<li width="250"><font color="#000080"><span>1</span></font></a>
<ul id="Navigation">
[*]2
[/list]
[/list]
</div>
</tr>
<tr>
<div border="0" width="250" height="250" ><ul id="Bart">
<li width="250"><font color="#000080"><span>3</span></font></a>
<ul id="Bart">
[*]4
[*]5
[*]6
[*]7
[/list]
[/list]
</div>
</tr>
<tr>
<div border="0" width="250" height="250"><ul id="Lisa">
<li width="250"><font color="#000080"><span onmouseover="hoverIE3()">8</span></font></a>
<ul id="Lisa">
[*]10
[*]11
[*]12
[*]13
[*]14
[*]15
[*]16
[*]17
[*]18
[*]19
[/list]
[/list]
</tr>
<tr>
<div border="0" width="250" height="250" ><ul id="Marge">
<li width="250"><font color="#000080"><span>20</span></font></a>
<ul id="Marge">
[*]<a href="aaa" class="fade">21</a></td>
[*]<a href="aaa" class="fade">22</font></a>
[*]<a href="aaa">23</font></a>
[/list]
[/list]
</div>
</tr>
</table>
[/list]
[/list]
[/list]
</body>
</html>
Ich weiß da steht einiges an ziemlich unnützem Zeug drin, aber das stammt noch aus diversen Versuchen. Das Menü 8 mit den Unterpunkten 10-19 soll beim laden der Seite zu und nicht offen sein. Also sollen die Punkte 10-19 nicht zu sehen sein. Ich wär echt froh wenn ihr mir helfen könntet. Danke dafür schon mal im Vorraus.
MfG
Banni