Bei 'span' müsste man aber noch zusätzlichen Aufwand betreiben, damit das Element per Tastaturnavigation anwählbar ist. Bei 'a' (und 'button' und 'input') ist die Erreichbarkeit per [Tab] bereits vorhanden.
Ja, darum hab' ich in diesem Fall auch implizit die Verwendung gebilligt, da sie unter diesen Gesichtspunkten sinnvoll erscheint, wenn eben das Element spezifische Eigenschaften benötigt, die "nur" bei a-Elementen vorhanden sind..
Darum ja der Hinweis mit dem einhängen per JS ins DOM - ansonsten geht man nicht-JavaScript-Benutzern mit einem "toten Link" auf den Senkel.