Sto lavorando con l'API History e utilizzo dello stato push e pop. Voglio interrompere l'evento popstate dallo sparare in alcuni scenari in cui sto aggiungendo l'hash all'URL. per esempio in alcuni casi al click di anchor si aggiunge #
all'URL e popstate viene immediatamente attivato) Voglio evitare tutti gli scenari in cui #
o #somehasvalue
vengono aggiunti all'URL e interrompere l'attivazione di popstate. Sto mantenendo gli URL con i parametri di query e non ho nessuno scenario in cui ho bisogno che l'evento popstate si attivi con #
nell'URL.interrompe l'attivazione di popstate su hashchange
Ecco il mio codice.
if (supportsHistoryApi()) {
window.onpopstate = function (event) {
var d = event.state || {state_param1: param1, state_param2: param2};
var pathName = window.location.pathname,
params = window.location.search;
loadData(event, pathName + params, d.state_param1, d.state_param2);
}
Questo non funziona quando si ritorna alla prima pagina aperta. Perché quindi lo 'state' è anche' null', ma non ha ancora hashchange –