4k Aufrufe
Gefragt in Webseiten HTML von azn-freak Mitglied (215 Punkte)
Ich habe ein Javascript, das bei einem Klick ein bestimmtes Emelent ein- bzw. ausblendet.
Klicke ich auf einen Link, erscheint etwas. Klicke ich auf einen zweiten Link, erscheint etwas beim zweiten Link.

Ich möchte das aber so haben, dass wenn man auf den ersten Link klickt, das was beim zweiten Link (sollte es eingeblendet seni) ausgeblendet wird.
Das gleiche soll für den zweiten Link gelten. Klicke ich auf den zweiten Link, wird das vom zweiten Link eingeblendet und das vom ersten Link ausgeblendet.

Das Script sieht wie folgt aus:
function Toggle(id) {

spanid1 = "ToggleRow_"+id;
val = document.getElementById(spanid1).style.display;
if (val == "none")
{
document.getElementById(spanid1).style.display = "block";
}
else
{
document.getElementById(spanid1).style.display = "none";
}
}

Im HTML eingebaut sieht es so aus:
<a href="javascript:Toggle('2')">
<img src="button/media.png" name="Media" border="0" id="Media" /></a>

<span id="ToggleRow_2" style="display:none">
<div style="width:90px; background-image:url(img/blue.png); text-align:left; padding:4px;">
<a href="home.html" target="Main">Pics</a><br>
<a href="home.html" target="Main">Videos</a>
</div></span>


Kennt sich da jemand aus?

12 Antworten

0 Punkte
Beantwortet von hoehrn Experte (3k Punkte)
Servus,

Kenne mich eigentlich aus, hätte aber einen neuen Denkansatz für dich,

Ich würde die Einblendung generell auf Mausüberflug reagieren lassen. So könntest du jederzeit einen dritten oder mehr Links einfügen, wenn daür mal bedarf sein sollte.
0 Punkte
Beantwortet von azn-freak Mitglied (215 Punkte)
Danke für den Tipp, jedoch möchte ich das beim Klicken lassen...
Gibt es da eine Möglichkeit das so umzusetzen wie oben beschrieben?

Oder geht das erst garnicht mit Javascript?
0 Punkte
Beantwortet von hoehrn Experte (3k Punkte)
Müsste schon gehen, wenn du die ein-/auszublendenden Elemente seperat vom Link als Objekte definierst. Und dann das Ereignis Klick für beide Elemente entsprechend anwendest.

Den genauen Syntax kann ich dir allerdings nicht sagen.
0 Punkte
Beantwortet von azn-freak Mitglied (215 Punkte)
Naja, das Element ist ja bereits separat vom Link durch <div> definiert...bzw <span>

Doch wie wende ich das Ereignis für beide Elemente an...das ist ja das Problem xD
Das Ereignis vom Klick müsste ja dann zwei Befehle enthalten. Einmal das Einblenden des einen und einmal das Ausblenden des anderen "Objekts"
0 Punkte
Beantwortet von hoehrn Experte (3k Punkte)
konnte man bei Java nicht die Befehle in der Klammer hintereinander auflisten...
0 Punkte
Beantwortet von azn-freak Mitglied (215 Punkte)
Ehrlich gesagt, kenne ich mich nicht grad gut mit Javascript aus...
Befehle hintereinander auflisten geht, doch ob es in der Klammer geht, weiß ich nicht.

Mein Problem ist nun der Befehl, dass wenn das eine passiert, das andere passieren soll...(ein- und ausblenden).
Wie definiere ich das denn in einem Befehl?
Ein Befehl muss dann zwei Objekte "steuern"
0 Punkte
Beantwortet von hoehrn Experte (3k Punkte)
ich meine mich dunkel an eine AND-dingenskirchen erinnern zu können. Gibt es nicht sowas self-HTML für Java-Script....
0 Punkte
Beantwortet von azn-freak Mitglied (215 Punkte)
Sowas kenn ich nicht xD
Aber kannst du mir nen Tipp geben nach was ich suchen soll?
kP wie ich das als Suchbegriff zusammenfassen soll xD
0 Punkte
Beantwortet von azn-freak Mitglied (215 Punkte)
Ich hab was gefunden und es funktioniert wie gewünscht ^^
www.html-world.de/forum/viewtopic.php?p=3315

Ich bedanke mich trotzdem für deine Unterstützung.
0 Punkte
Beantwortet von hoehrn Experte (3k Punkte)
So jetzt hab ich was gefunden....

also die And-Verknüpfung wird mit && dargestellt, ich habe hier ein Beispiel für eine Bildschirmausgabe:

System.out.println(((xxxxxxxxxxxxxxx) && (xxxxxxxxxxxxxx)));

auf dein Problem bezogen würde ich sagen, du kannst einfach die anweisungen zum anzeigen/nicht anzeigen hinteinander aufreihen, nach dem abhören des Ereignisses.

ein Versuch wäre glaub ich wert.
...