Carsten: Imagewechsel mit Variablen funktioniert nicht (xy.src)

Beitrag lesen

Hallo Landolt,

Ich glaub es einfach nicht.

du sagst es.

Eure anderen Tips habe ich natuerlich alle ausprobiert, wobei aber kein einziger geht.

hm... ein gewisses Eingeständniss eigener Verständnissprobleme könnte höflicher wirken.
Immerhin enthalten deine Postings alle den gleichen grundsätzlichen Programmfehler.
Du weist einander inkompatible Typen zu.
Inzwischen ist mir klar warum du das nicht wegmachen "konntest", nämlich weil unsere
Lösungsvorschläge die gewünschte Funktionalität mit weggemacht hätten - das war aber
aus deinen vereinfachten Codeschnipseln nicht so richtig zu erkennen.

Ok, also letzter Versuch:

h1 = new Image();
h1.src = "images/menu/ortslage_h.gif";
bild=h1;  // nur so geht es
window.document.images["titel"+seite].src = bild.src;

Das bringt dich für deine Aufgabe erstmal nicht weiter (in der URL kannst du nun mal nur einen
String übergeben, kein ImageOjekt), sollte aber das Problem mit den Daten-Typen klarmachen.

Für das was du vorhast brauchst nicht einen String to typ-xy Konverter sondern was, was dir String in
Quelltext umwandelt-zugegebenermassen eine der subtileren Umwandlungen.
Der String "h1" soll ja als Quelltext h1 interpretiert werden soll. Bei konstantem String kannst du
einfach die Anführungzeichen weglassen. (Das wäre für dein vereinfachtes Beispiel im Posting die Lösung
gewesen, auf die ich angespielt hatte.)

Um zusammengebaute Strings so zu behandlen, als ob sie im Quelltext stünden gibt es
eval(); <../../tecm.htm#a2>

also z.b.

t1="alert(";
t3=");";

eval(t1+"Hallo"+t3);

also

eval("Bildobjekt=h"+seite+";");

Gruss,
Carsten

PS: und verdrück heute abend beim Italiener nicht die Speisekarte sondern die Pizza ;)