hrefとonclick

WindowsXPにインストールしたFirefoxで変な動作が発生。

<a href="#" onclick="history.back();">back</a>

<a href="#" onclick="history.back();return false;">back</a>

に変更して、とりあえず解決はしたのだが。

上記のように記述した場合の動作というのは標準で規定されているのだろうか?

onclickハンドラでfalseを返すと、hrefで指定した移動がキャンセルされる。
今回の現象は、明示的にfalseを返さなかった場合href="#"に移動してしまったわけだが、多くのブラウザでは、history.back()が実質的にfalseを返すのと同じ動作を行っているように思える。