axel: href="#" wird im Opera interpretiert

Beitrag lesen

good afternoon beisammen,

beim Rumprobieren, habe ich gerade etwas erstaunliches (für mich zumindest) festgestellt und möchte gerne erfahren, ob das auch andere Menschen überrascht.
Also: Für einen Link, der ein Javascript ausführen soll, wird oft folgende Lösung angeboten (auch hier im Forum):
<a href="#" onClick="jsfunction()">link</a>
Während nun der IE und NC (meine zumindest - IE 5.0 und NC 4.7) erwartungsgemäß das href="#" ignorieren und nur jsfunction() ausgeführt wird, sieht Opera (bei mir 5.11) das anders. href="#" wird als Verweis auf die aktuelle Datei gesehen (kann ich auch durchaus nachvollziehen), was aber zur Folge hat, das erst das Script ausgeführt wird und dann die beim Aufruf aktuelle Datei neu geladen wird.
Hier ein Beispiel, das das besonders schön verdeutlicht:
<a href="#" onClick="history.back()">back</a>
Klickt man in Opera auf den Link, wird kurz die Vorgängerseite dargestellt (back() wird ausgeführt), aber sofort danach die aufrufende Seite neu geladen. Im IE und NC funktioniert das als ganz normaler Zurück-Link.
Offensichtlich sollte man also prinzipiell
<a href="javascript:jsfunction()">
verwenden.

Ein schönes Restwochenende wünscht Euch
axel