Hallo Paul,
HR3 macht das mit JavaScript, sie konvertieren die Klicks auf Links in AJAX und lassen so den Music-Player laufen. Die URL-Anzeige im Browser kann man über die pushState Methode des History-Objekts steuern, dort gibt es auch ein Event beforeunload, mit dem man sogar bei Klick auf "Zurück" noch eingreifen und den harten Rücksprung verhindern kann. Alternativ zu diesem Rummel kannst Du auch mit AJAX und Hash-URLs arbeiten und deine Links nur hinter dem Hash-Zeichen verändern, das löst keinen neuen Seitenabruf aus. Du musst dann allerdings schon auf eine Navigation zu einer bestimmten Hash-URL reagieren (guckst Du hier) und die Seitendarstellung erneuern. Eine Library dafür kann z.B. Sammy sein, weiß nicht ob das noch modern ist.
Habe selbst sowas noch nicht gebaut, aber das waren meine ersten Ansätze wie sie es gemacht haben könnten.
Rolf
sumpsi - posui - clusi