- Registriert
- Apr. 2008
- Beiträge
- 476
Hallo,
ich plage mich nun seit Tagen mit einem Problem im Bezug auf JavaScript.
Ich habe einen längeren Text mit Aufgabengebieten (Codebeispiel im „blubber“-Container) sowie Personen („a“-Tags im „blubber“-Container), welche diesen betreuen. Da es vorkommt, das eine Person mehrere Aufgaben begleitet, habe ich jeweils einen eigenen Div angelegt (Codebeispiel im „hide“-Container). Im Personen-Div sind dann noch weitere Conainer mit Bild der Person sowie Kontaktdaten, die beim hovern hinzukommen. Nun möchte ich es erreichen, das jeder Anker mit dem entsprechenden Div gefüllt wird.
Warum? Zum einen bleibt der Text übersichtlicher, zum anderen muss ich, sollte sich bei einer Person was ändern, nicht zig Container ändern, sondern nur einen.
Meine Idee war es, dies über eine „for“-Schleife zu lösen. Sprich, einmal alle „a“-Tags im „blubber“-Container ablaufen, Namen merken und dann am Anker jeweils den Div mit der ID analog dem Ankernamen einzufügen. Leider hab ich da wohl mehr oder weniger murks „gecodet“ bzw. habe vllt. auch den falschen Denkansatz?
Ich wäre froh, wenn mir jemand beim Lösen des Problems helfen könnte. Gerne auch mit Hinweisen/Tutorials, die ähnliches behandeln.
Via Google komme ich leider nicht weiter und mit den Tutorials bei SelfHTML und W3Schools leider auch nicht sehr weit.
Hier der Code:
(Namen erfunden, Text stark gekürzt, Zeile 1+4 sollte jeweils „Max Mango“ beinhalten, Zeile 2 "Nadine Keks" usw., CSS ist nicht komplett eingefügt - funktioniert aber, geht lediglich um das Javascript)
Viele Grüße aus Mannheim
ich plage mich nun seit Tagen mit einem Problem im Bezug auf JavaScript.
Ich habe einen längeren Text mit Aufgabengebieten (Codebeispiel im „blubber“-Container) sowie Personen („a“-Tags im „blubber“-Container), welche diesen betreuen. Da es vorkommt, das eine Person mehrere Aufgaben begleitet, habe ich jeweils einen eigenen Div angelegt (Codebeispiel im „hide“-Container). Im Personen-Div sind dann noch weitere Conainer mit Bild der Person sowie Kontaktdaten, die beim hovern hinzukommen. Nun möchte ich es erreichen, das jeder Anker mit dem entsprechenden Div gefüllt wird.
Warum? Zum einen bleibt der Text übersichtlicher, zum anderen muss ich, sollte sich bei einer Person was ändern, nicht zig Container ändern, sondern nur einen.
Meine Idee war es, dies über eine „for“-Schleife zu lösen. Sprich, einmal alle „a“-Tags im „blubber“-Container ablaufen, Namen merken und dann am Anker jeweils den Div mit der ID analog dem Ankernamen einzufügen. Leider hab ich da wohl mehr oder weniger murks „gecodet“ bzw. habe vllt. auch den falschen Denkansatz?
Ich wäre froh, wenn mir jemand beim Lösen des Problems helfen könnte. Gerne auch mit Hinweisen/Tutorials, die ähnliches behandeln.
Via Google komme ich leider nicht weiter und mit den Tutorials bei SelfHTML und W3Schools leider auch nicht sehr weit.
Hier der Code:
(Namen erfunden, Text stark gekürzt, Zeile 1+4 sollte jeweils „Max Mango“ beinhalten, Zeile 2 "Nadine Keks" usw., CSS ist nicht komplett eingefügt - funktioniert aber, geht lediglich um das Javascript)
Code:
<div id="blubber">
1. textytext <a name="mm"></a> blubbb <br>
2. texter <a name="nk"></a> texty<br>
3. textilicicous <a name="gk"></a> <br>
4. textinator <a name="mm"></a> texted<br>
5. blubbt <a name="mr"></a> immernoch<br>
6. muuuh <a name="tz"></a> määäääh<br>
</div>
<div id="hide">
<div id="gk">Gerd Knödel<div id="hover"><div id="bild">BILD</div>Kontaktdaten</div></div>
<div id="mm">Max Mango<div id="hover"><div id="bild">BILD</div>Kontaktdaten</div></div>
<div id="nk">Nadine Keks<div id="hover"><div id="bild">BILD</div>Kontaktdaten</div></div>
<div id="mr">Marc Roulade<div id="hover"><div id="bild">BILD</div>Kontaktdaten</div>/</div>
<div id="tz">Tina Zitrone<div id="hover"><div id="bild">BILD</div>Kontaktdaten</div></div>
</div>
<style>
#hide {visibility:hidden;}
</style>
<script>
function namez() {
var elements = z("blubber").getElementsByName(xxx);
var numElements = elements.length;
var xxx=z("blubber").getElementsByTagName("a")
var z=document.getElementById;
for(var index = 0; index < numElements; index++) {
elements[index].innerHTML= z(elements).innerHTML;
}
}
namez()
</script>
Viele Grüße aus Mannheim
Zuletzt bearbeitet: