Anzeige der Link-Adresse wieder freigeben
andy
- java
Hallo zusammen
ich würde gerne auf einer Seite beim Klick auf einen Link diesen hervorheben, was ja mit css mit active funktioniert. Dann soll so lange die Anzeige mit der Adresse des Links anhezeigt bleiben bis auf eine freie Fläche auf der Seite geklickt wird, was bisher nur mit einem Klick auf einen anderen Link funktioniert:
onclick:
function AnzeigeSperren(index)
{
parent.LinkAnzeigen = false
parent.document.getElementById("Adresse").innerHTML = document.getElementsByTagName("a")[index].href
parent.document.getElementById("Adresse").title = document.getElementsByTagName("a")[index].innerHTML
parent.LinkIndex = index
}
onmouseover:
function LinkAuslesen(index)
{
if (parent.LinkAnzeigen == true)
{
parent.document.getElementById("Adresse").innerHTML = document.getElementsByTagName("a")[index].href
parent.document.getElementById("Adresse").title = document.getElementsByTagName("a")[index].innerHTML
}
}
function AnzeigeReaktivieren(i)
{
parent.LinkAnzeigen = true
}
Danke gruß Andreas
Hi,
der passende Themenbereich für deine Frage ist JavaScript. Falls dir nicht klar sein sollte, dass das etwas vollkommen anderes ist als JAVA - dann mache es dir bitte erst mal klar.
Dann soll so lange die Anzeige mit der Adresse des Links anhezeigt bleiben bis auf eine freie Fläche auf der Seite geklickt wird, was bisher nur mit einem Klick auf einen anderen Link funktioniert:
Vermutlich deshalb, weil du nur auf Klicks auf eben solche überhaupt reagierst?
Entweder musst du Klicks „irgendwohin“ ebenfalls überwachen (also bspw. auf dem document) und darauf entsprechend reagieren; oder du machst dir die Tatsache zu Nutze, dass der „aktive“ Link den Fokus wieder verliert, wenn woanders hin geklickt wird (onblur).
onclick:
function AnzeigeSperren(index)
{
parent.LinkAnzeigen = false
parent.document.getElementById("Adresse").innerHTML = document.getElementsByTagName("a")[index].href
Statt einen Index zu übergeben, um an Hand von diesem wiederum den Link zu ermitteln, könntest du vermutlich einfacher und direkter gleich die Referenz auf den Link, auf den geklickt wurde, übergeben.
> ~~~javascript
function AnzeigeReaktivieren(i)
> {
> parent.LinkAnzeigen = true
> }
Wann, wo und wozu rufst du diese Funktion auf?
MfG ChrisB
Hallo ChrisB
und klar shit ich wollte natürlich im Bereich JavaScript schreiben. Danke für Deine Änderung.
function AnzeigeReaktivieren(i)
{
parent.LinkAnzeigen = true
}
nehme ich für den Klick rings um des iframes wo sich die Links befinden. Und die Funktion
function LinkAuslesen(index)
{
if (parent.LinkAnzeigen == true)
{
parent.document.getElementById("Adresse").innerHTML = document.getElementsByTagName("a")[index].href
parent.document.getElementById("Adresse").title = document.getElementsByTagName("a")[index].innerHTML
}
}
nehme ich ja für eine MouseOver Funktion. Wird beim Klick auf einen Link LinkAnzeigen auf false gesetzt wird ja keine neue Adresse angezeigt. Das funktioniert ja auch ohne Gegensätze auf den Seiten die nur Links auflisten. Jetzt ist aber eine Seite nicht komplett mit Links beladen, sie stehen aber in einer Tabelle. Alsokann ich ja nicht durch Klick auf freie Zellen erreichen das die Anzeige wieder aktiviert wird.
Also dachte ich auch mal an onblur, diese Funktion wird ja auch schon beim Fensterwechsel aufgerufen. Und dann sollte ich doch prüfen welches Objekt jetzt den Focus hat.
Danke gruß Andreas