Der folgende Beitrag wurde am 22. 07. 2005, 02:13 Uhr von Sebastian Lorenz veröffentlicht.
Hallo,
hier hat mir ein Designer wieder so ein Ei ins Nest gelegt. Und nun soll das ganze natürlich auch funktionieren...
Mein Problem:
Der Besucher fähr in der Navigation über einen Eintrag, dann über einen Untereintrag etc. 3 Ebenen insgesamt.
Dabei werden die Ebenen navi1, navi1sub1, navi1sub1sub1 eingeblendet.
Ich habe nun eine Funktion, die Ausfehührt wird, wenn die Maus einige Sekunden über keiner dieser Ebenen war.
Ich hätte nun gerne eine Funktion, die folgendes macht:
1. Finde alle div-Objekte mit "navi" im .name
2. Schleife für jedes Element
3. Ist sichtbar ?
4. Wenn ja: element.hide();
Ich habe nun leider keine Ahnung, wie ich Zugriff auf die Elemente habe. Ich könnte sicher etwas furchtbar kompliziertes machen, und einfach ALLE Ebenen ausblenden. Besser wäre es aber (allein um der sauberen Programmierung willen), die Liste der Ebenen zur Laufzeit zu erzeugen.
Es ist schon schlimm genug, die Positionen etc. mit PHP zu erzeugen. Wenn da später ein mal 200 Ebenen sind, wird es sicher sehr langsam, wenn ich eine Liste aller Ebenen in einem Array vordefiniere.
Für Tipps oder Links zum "inpirieren" bedanke ich mich im voraus!
Bye,
Sebastian
Der folgende Beitrag wurde am 22. 07. 2005, 02:41 Uhr von Gunnar Bittersmann veröffentlicht.
Hi Sebastian,
> hier hat mir ein Designer wieder so ein Ei ins Nest gelegt. Und nun soll das ganze natürlich auch funktionieren...
Aha, weiß der Designer auch, dass eine Navigation immer auch ohne JavaScript funktionieren muss?
> 1. Finde alle div-Objekte […]
document.getElementsByTagName()
> […] mit "navi" im .name
getAttribute(), search()
Live long and prosper,
Gunnar
--
„Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)
Der folgende Beitrag wurde am 22. 07. 2005, 09:59 Uhr von chr..itz veröffentlicht.
Hi,
mal so als Alternative:
Wäre es nicht einfacher wenn Du Dir von vorne herein merkst was jetzt gerade sichbar ist?!
Wenn die Zeit rum ist setzt Du die gemerkten Divs dann wieder auf hidden, ggf. Änderungen überschreiben und gut ist bzw. sollte es ( vorraus gesetzt ich habe Dein Problem richtig verstanden) sein.
Gruß Chris
Der folgende Beitrag wurde am 22. 07. 2005, 15:02 Uhr von wahsaga veröffentlicht.
hi,
> Ich hätte nun gerne eine Funktion, die folgendes macht:
>
> 1. Finde alle div-Objekte mit "navi" im .name
da div in HTML gar kein name-attribut hat, redest du vermutlich von einer dynamisch per javascript zugewiesenen eigenschaft divreferenz.name ...?
gruß,
wahsaga
--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }
Der folgende Beitrag wurde am 25. 07. 2005, 09:54 Uhr von Cybaer veröffentlicht.
Hi,
> Für Tipps oder Links zum "inpirieren" bedanke ich mich im voraus!
Coding: Darstellungswechsel - Un-/Sichtbare Elemente: Ein-/Ausklappen, Verstecken, Transparenz, Farbe
Aber wie bereits gesagt: Div hat kein NAME-Attribut. Da dies aber in HTML Verwendung findet, kannst Du es nicht ohne Probleme verwenden. Nimm also ID oder ein eigenes Attribut, das HTML nicht kennt, z.B. <div myname="navi...". Dann sähe der Fuunktionsaufruf so aus:
toggle("fold","div:myname","navi"); // Blendet alle DIVs aus, deren Attributwert von myname mit navi beginnt
Gruß, Cybaer
--
Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4