Der Martin: Sprung zum Seitenanfang nach Javascript-Aufruf

Beitrag lesen

Hallihallo,

Das Problem - Nach dem Aufruf eines Javascripts springt der Browser automatisch zum Seitenanfang.

Falsch. Nach deinen weiteren Ausführungen solltest du sagen: "Nach dem Anklicken eines Links".

Aufgerufen wird das Javscript über den Event-Handler "onclick" in einem Link. Das "href" Attribut hat dabei den Wert "#".
<a href="#" onclick="doSth();">doSth.</a>

Ja, ist doch klar: Da ist ein Link, das Verweisziel ist "#", also ein Anker auf der aktuellen Seite. Da der Name der Ankers fehlt, springen die meisten Browser ersatzweise zum Seitenanfang. Das ist zunächst mal die Grundfunktion des Links.
Zusätzlich wird über den onclick-Handler noch eine JS-Funktion aufgerufen.

Auch der Return-Value scheint dieses Verhalten nicht zu beeinflussen.

Das sollte so nicht sein. Sobald dein Javascript false oder 0 zurückgibt, sollte der Link nicht weiter bearbeitet werden.

Ich habe etliche Variationen ausprobiert, ob mit oder ohne Return-Value oder oder oder...

Mit welchen Browsern, mit welchen return values?

Das Dokument ist als "XHTML 1.0 Strict" deklariert und wird vom W3C Validator als valides Dokument erkannt.

Das ist lobenswert, aber für das Problem nicht unbedingt entscheidend.

So long,

Martin