JavaScript: Event wenn der Hash-Teil der URL entfernt wird
Rolf B
- browser
- javascript
Hallo,
es gibt die Events hashchange und popstate. Ich kann damit feststellen, ob sich der Hash der URL ändert (in einer SPA wichtig). Es gibt ein paar Macken, z.B. triggert Chrome beide Events, der IE 11 aber nur hashchange, aber damit kann ich klar kommen.
Was mir Bauchweh macht, ist, dass hashchange in beiden Browsern nicht triggert, wenn ein User den Hash-Teil der URL komplett entfernt.
Muss ich dafür jetzt doch wieder einen setInterval-Handler bemühen? Ich hoffte, mit hashchange könnte man darauf verzichten.
Rolf
Tach!
Was mir Bauchweh macht, ist, dass hashchange in beiden Browsern nicht triggert, wenn ein User den Hash-Teil der URL komplett entfernt.
Das ergibt ja dann auch einen neuen Request. Also wenn alles inklusive # entfernt wird und der Nutzer dann Enter drückt.
Muss ich dafür jetzt doch wieder einen setInterval-Handler bemühen? Ich hoffte, mit hashchange könnte man darauf verzichten.
Der wird den neuen Request auch nicht fangen können.
dedlfix.
Hallo dedlfix,
wenn ich http://example.com/foo/bar.html#hugo
in http://example.com/foo/bar.html
ändere, löst das einen Request aus und damit einen Page-Reload?
Ich gehe jetzt ins laaaange Wochenende (8 Tage) und kanns nicht mehr probieren...
Rolf
Hallo Rolf,
wenn ich
http://example.com/foo/bar.html#hugo
inhttp://example.com/foo/bar.html
ändere, löst das einen Request aus und damit einen Page-Reload?
Ja.
LG,
CK
Tach!
wenn ich
http://example.com/foo/bar.html#hugo
inhttp://example.com/foo/bar.html
ändere, löst das einen Request aus und damit einen Page-Reload?
Ja, genauso wie das Enter-Drücken, ohne dass man die URL (ohne Hash) verändert. Kann man in den Browsertools gut mitverfolgen.
dedlfix.