hallo
Um in einer etwas komplexen App die Navigation zu gewährleisten, nutze ich derzeit sehr oft
window.location.hash = "#exampletarget";
Das erzeugt einen history-Eintrag, dem nicht wirklich eine adäquate Funktionalität entspricht (ausser dass ich über Browser-Back zusätzlich im gegenwärtigen DOM navigieren kann).
Voraussetzung ist eine id im Ziel.
Es tut auch nicht das gewünschte, wenn ich eine Tab-Taste in einer Navigation rotieren lassen will. Da will ich ja nicht die Navigation focusieren, sondern den ersten Eintrag
Die Alternative wäre element.focus()
Hier bin ich gefordert, tabindex="0" zu definieren, falls das Ziel nicht direkt fokusierbar ist. Bei allen Zielen versuche ich aria-label zu berücksichtigen.
Hier nun die Frage: Was bietet generell die bessere Experience, focus oder location.hash?
Die betroffene Anwendung generiert Inhalte ausschliesslich über javascript. Bookmarking von bestimmten GUI-Zuständen ist nicht vorgesehen.