Ich habe ein Skript-Tag am Ende einer HTML-Seite platziert:
$(window).on ('hashchange', function (e) { alert (location.hash); });
Es funktioniert, wenn ich auf Schaltflächen mit hrefs wie #a
klicke, aber wenn ich Links wie localhost/aaa#a
öffne, wird die Alert-Funktion nicht ausgelöst.
Es sieht also so aus, als müsste ich das Vorhandensein eines Hashes erkennen, wenn das Dokument fertig ist. Aber das sah falsch aus.
Gibt es eine Möglichkeit, es in beiden Situationen funktionieren zu lassen?
Sie müssen das Ereignis beim Laden der Seite manuell auslösen. Das Ereignis wird nur ausgelöst, wenn der Benutzer eine direkte Aktion ausführt. Da beim Laden der Seite keine Aktion des Benutzers erfolgt, wird das Ereignis on hashchange nicht ausgelöst.
%Vor%Wenn Sie das Ereignis nur auslösen möchten, wenn ein Hashwert vorhanden ist,
%Vor%Tags und Links javascript html jquery