Zum Inhalt springen

Navi ein/ausblenden mit JS


Cleriker

Empfohlene Beiträge

hiho!

ich hab folgendes problem.

meine navi soll bei einem mouseover auf ein bestimmtes div angezeigt werden, beim verlassen der navi wird es geschlossen (display:none). soweit kein problem. bis auf den internet explorer... der verliert löst das onmouseout-event jedes mal aus wenn ich in der navi über die punkte wechsel. sollte bekannt sein dieses verhalten.

nun mal etwas code.

im template zur anzeige:


<body>


<!-- Seite -->

<div class="page">


	<!-- Navigation -->

	<div id="blender" onmouseout="switch_navi('navi')" onmouseover="switch_navi('navi')">

		<div class="navi-aus" id="navi">__master_hauptnavigation__</div>

	</div>


	<!-- Kopf -->

	<div class="header"></div>

	<div id="trennung"></div>


	<!-- Inhalt -->

	<div class="main">

	    <div class="content" style="position:relative;"></div>

	</div>


</body>

im CSS hab ich die bereiche so definiert:

.page                           { position:relative; width: 975px; margin: auto; background: #abe4fe url(../pics/layout/content_mitte.jpg) no-repeat 9px 222px; }


.page #blender					{ position:absolute; z-index:50; left:30px; top:156px; width: 253px; padding-top:65px; }

.page #blender .navi-ein		{ z-index:100; width: 253px; filter:alpha(opacity=90); -moz-opacity:.9; opacity:.9; }

.page #blender .navi-aus		{ z-index:100; width: 253px; display:none; }

so nun das javascript für das switchen:

	function switch_navi(element)

		{

		if($(element).hasClassName('navi-aus'))

			{

			$(element).removeClassName('navi-aus');

			$(element).addClassName('navi-ein');

			}

		else

			{

			$(element).onmouseout = function(e)

				{

				if (!e) 

					e = window.event;


				reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;


				while (reltg.tagName != 'BODY')

					{

					if (reltg.id == this.id){return;}

					reltg = reltg.parentNode;

					}

				$(element).removeClassName('navi-ein');

				$(element).addClassName('navi-aus');	

				}

			}

		}

an der stelle while (reltg.tagName != 'BODY') würde er das darunterliegende event auslösen mit den classen, wenn ich mit der maus auf den body kommen würde. dummerweise komm ich nie auf den body weil auf dem body ja der andere schmonzes liegt. also quasi so wie ich den code im moment habe, switcht er die navi nie aus.

hat jemand ne idee?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...