Bildwechsel hin und zurück an mehreren Stellen
Manni
- javascript
Hi Fachwelt,
habe folgendes Problem:
zwei Grafiken sollen vor Aufklappmenues auftauchen:
hat jemand eine Tipp für mich???
so sieht meine Funktion jetzt aus:
function bildwechsel(Bildname)
{
if(document.getElementById(Bildname).src.indexOf('Pfad/Minus.gif') == -1)
{
document.getElementById(Bildname).src = "Pfad/Minus.gif"
}
else
{
document.getElementById(Bildname).src = "Pfad/Plus.gif"
}
}
Aufgerufen wird sie hier:
<img src="Pfad/Plus.gif" id="grafik" name="grafik" onClick="bildwechsel(this.name)">
thanx, Manni
Hellihello
Hi Fachwelt,
habe folgendes Problem:
zwei Grafiken sollen vor Aufklappmenues auftauchen:
- wenn zu und - wenn auf
jeweils auf click soll + geändert werden zu - und beim Zuklappen wieder + angezeigt werden.
An 1 Stelle hat mein js prima funktioniert, als ich es dann aber an mehreren Stellen eingebaut hatte verändert sich immer nur die Grafik an der 1. Stelle auf der Seite anstatt die Grafik an der Stelle, auf die geklickt wird.hat jemand eine Tipp für mich???
so sieht meine Funktion jetzt aus:function bildwechsel(Bildname)
{
if(document.getElementById(Bildname).src.indexOf('Pfad/Minus.gif') == -1)
{
document.getElementById(Bildname).src = "Pfad/Minus.gif"
}
else
{
document.getElementById(Bildname).src = "Pfad/Plus.gif"
}
}
Aufgerufen wird sie hier:<img src="Pfad/Plus.gif" id="grafik" name="grafik" onClick="bildwechsel(this.name)">
damit würde dann immer das Bild mit der id "grafik" aufgerufen.
Dank und Gruß,
Hi Frankx,
erst mal danke! - Hast du einen Tipp wie ich das zu umgehen kann?
damit würde dann immer das Bild mit der id "grafik" aufgerufen.
Dank und Gruß,
Ciao,
Manni
Hellihello
Hi Frankx,
erst mal danke! - Hast du einen Tipp wie ich das zu umgehen kann?
onClick="bildwechsel(this.name)"
heißt, rufe die Funktion "bildwechsel" auf und übergib als Parameter "meinen" Namen. Das <img> muss also den name="xyz" haben und auch die id="xyz".
Die Bilder dürfen nicht die selbe Id und denselben namen haben. Uu wäre auch (this.id) sinnvoller?
Dank und Gruß,
Hi Frankx,
Die Bilder dürfen nicht die selbe Id und denselben namen haben. Uu wäre auch (this.id) sinnvoller?
dann muss ich wohl nochmal neu überlegen, da die Grafiken an ziemlich vielen Stellen vor "Aufklapptext" liegen und immer neuer Name ziemlich aufwändig wäre....
Eigentlich gibt es das Problem doch häufiger - ich finde irgendwie nix richtiges...
Danke für's Aufklären!
Ciao,
Manni
Hellihello
dann muss ich wohl nochmal neu überlegen, da die Grafiken an ziemlich vielen Stellen vor "Aufklapptext" liegen und immer neuer Name ziemlich aufwändig wäre....
Eigentlich gibt es das Problem doch häufiger - ich finde irgendwie nix richtiges...
Vielleicht hab ichs auch nicht ganz kapiert. Du kannst aber auch recht unproblematisch per Javascript alle Images durchlaufen und ihnen diese Funktion "dynamisch" zuweisen. Gut wäre, wenn du das Problem "eindampfen" könntest, eine Testumgebung mit zB. drei Beispielbildern, dort das Problem lösen und dann die Analogie in die größere Umgebung ziehen.
Dank und Gruß,
Hallo Manni,
Du könntest in der Funktion bildwechsel statt this.name einfach this übergeben. Dann hast Du das gesamte Image-Objekt in der Funktion zur Verfügung.
function bildwechsel(bildobjekt) {
if(bildobjekt.src.indexOf('Pfad/Minus.gif') == -1) {
bildobjekt.src = "Pfad/Minus.gif";
} else {
bildobjekt.src = "Pfad/Plus.gif";
}
}
Gruß
Olaf
Lieber Manni,
ich hatte da mal etwas gemacht, das Dir vielleicht von der Idee her weiterhilft: explorer-test
Liebe Grüße aus Ellwangen,
Felix Riesterer.