Aber, wenn ich das so mache, dann werden diese Links bei einem späteren Aufruf dieser Seite ja nicht mehr als besuchte Links erkannt, da der Browser sie nicht seiner History hinzugefügt hat.
Noch ne schmutzige Idee, laß das return false mal weg und manipuliere das href-Attribut, so daß der Link zwar ausgeführt wird, aber folgenlos bleibt. Bspw.:
<a id="a1" href="..." onclick="...; changeAttr(this)">Klick</a>
function changeAttr(o) {
o.href = '#' + o.id;
}