molily: mit eurer hilfe schwer erarbeitet, aber funktioniert nicht...

Beitrag lesen

nä, tut sie nicht ABER, und das ist mein irrtum, die andere auch nicht. hier kannst du das ganze online bestaunen, beim klick auf eins der bilder in der mitte geht das linkziel entweder im gleichen fenster/tab auf oder es öffnet sich ein neues UND der rahmen um das bild erscheint.

Schau dir deinen Code mal genau an. Am besten rückst du den Code mal mit jsbeautifier.org ein, um die Verschachtelung der Kontrollstrukturen zu sehen. Du liest aus location.hash einen Wert und suchst anhand dessen ein Element im DOM. Wenn dieses existiert, so fokussierst du es in der Annahme, es hätte eine focus-Methode.

Falls das alles zutrifft und geklappt hat, dann durchläufst du alle Links und verpasst ihnen einen keyup-Handler. Was bedeutet, dass der Code nur ausgeführt wird, wenn die Seite mit #foo aufgerufen wird unter der Voraussetzung, dass foo die ID eines existierenden Elements ist. Dies trifft nicht zu, wenn ich einfach die obige Seite aufrufe.

Im Übrigen sehe ich dort keinen Link mit target="_blank" oder ähnliches, außerdem bin ich gerade an einem Mac und die dortigen Browser heben Links beim Klicken nicht mit eine Umrandung hervor (ob mit oder ohne dein Script).

Davon abgesehen gibt es die CSS-Eigenschaft http://de.selfhtml.org/css/eigenschaften/rahmen.htm#outline@title=outline, welche in neueren Browsern die Umrandung von fokussierten Links regelt (a:focus, a:active). JavaScript ist dafür eigentlich nicht nötig.

Mathias