Leonhard Kronast: Experimente oder wie bringe ich Netscape dazu...

Beitrag lesen

Hi Patrick,

ein Versuch der Erklärung des "Ausschaltens" des Javascripts/CSS:

Dass das CSS und Javascript gleichzeitig weg sind, liegt an der Verknüpfung der beiden Dinge im Netscape Navigator (Stichwort: JavaScriptStyleSheet).
Wahrscheinlich stürzt die Javascriptmaschine ab - schau mal nach dem "Ausschalten" und Beenden des Navigators mit Strg+Alt+Entf. (Dem Microsoft Griff) in die Taskliste - Vermutlich findest Du da immer noch den Navigator, denn der rödelt da immer noch vor sich hin.

Der Grund dafür dürfte folgendes sein (ich habe mir mal den Quelltext angesehen):

In der Funktion aktivateEl(id,e), wird eine bestimmtes(id) Tooltipfenster as "aktive" gekennzeichnet, und dann wird mit checkEl(e) per Settimeout auf den Mousemove-Event gewartet, und mit jedem Mousemove wird das aktivierte Element immer wieder auf sichtbar gestellt. Dieses Settimeout merkt sich die Funktion mit "timerid".

Wenn dann der Mouseout-Befehl kommt, wird dieses aktivierte Element mit ClearEl() wieder unsichtbar und das die mit timerid gekennzeichnete Schleife wird beendet.

Bei dem Link auf Deine atomic-eggs-Seite (id=mailto) fehlt dieses ClearEl() des aktivierten Elemetes, wenn nicht direkt auf den Link geklickt wird, denn dann wird vielleicht ein anderes Tooltipfenster geöffnet und damit ein anderes als "active" und die alte "timerID" wird durch eine neue "timerID" überschrieben und immer wieder wird die Maus bewegt und Netscape durchläuft jedesmal neu die alten Timeout-Schleife - ohne dass das erste aktivierte Element (mailto) und die daran hängenden Schleife (timerID) durch ein clearEl() jemals ausgeschaltet wird, falls Du dann noch mal über den atomic-eggs Link fährst, wird dann sogar noch eine weiterer Schleifensatz gestartet und so weiter. (Mit ein bißchen "Mühe" kriegt man damit auch Netscape 4.03 und den Internet-Explorer zum Absturz, den den dann aber völlig ;-) ).

Du müßtest also ein doppel der Funktionen hinzufügen, die sich nur genau mit diesem eine aktivierte Element beschäftigt, also auch einmalige TimerId und einmalige "aktive"-Variable.

Ich würde dir aber eher raten auf den Link in der Form zu verzichten oder einen Satz spezieller Funktionen mit eigener TimerID nur für diesen Link zu erstellen... aber ich weiß nicht ob das lohnt, vielleicht doch einfach ein Link auf der Seite? ;-)

Gruß

Leonhard

P.S. Noch ein Hinweis: Die clearEL()-Funktion ist zweimal definiert (im Scriptteil über und im Scriptteil unter dem HTML-Text) so was sollte man normalerweise vermeiden.