Ho bisogno di un modo per allegare un po 'di pre-elaborazione ad ogni assegnazione di window.location. C'è un modo per fare questo. Fondamentalmente ho bisogno di serializzare alcune informazioni, che verranno utilizzate nella nuova posizione.Javascript: Come intercettare il cambiamento di window.location
risposta
È possibile utilizzare l'evento beforeunload
per attivare il codice per eseguire prima di navigazione ... Se avete bisogno di qualcosa di più specifico (ad esempio, solo navigazioni avviato nel il codice), il n Raccomando di modificare il codice window.location
in una funzione separata e aggiungere un gancio per la logica personalizzata.
Si consiglia di guardare al post di Ben Nadel in materia di fare questo, può essere esattamente quello che stai cercando
Binding Events to non DOM objects with jQuery
suo esempio nei colloqui pubblicare sulla creazione di un gestore di eventi che innesca un evento di modifica quando window.location
cambia
In effetti la soluzione sembra "setInterval" e controllare periodicamente. –
- 1. Impostazione JavaScript window.location
- 2. Come aggiungere target = "_ blank" a JavaScript window.location?
- 3. javascript window.location nella nuova scheda
- 4. come intercettare le modifiche innerHTML in javascript?
- 5. Javascript: ottieni window.location tutto tranne l'host?
- 6. La modifica di window.location interrompe l'esecuzione di javascript?
- 7. QML eseguire JavaScript codice dopo il cambiamento di stato
- 8. window.location contro solo posizione
- 9. javascript come passare il nome percorso della proprietà window.location e il reindirizzamento
- 10. Come intercettare il modulo in modo affidabile?
- 11. Come si ignora l'evento error window.location?
- 12. L'uso di window.location non funziona su iPad
- 13. javascript window.location iframe, make parent window vai al luogo
- 14. Rileva il cambiamento delle schede del browser con javascript
- 15. Rilevamento cambiamento in un oggetto JavaScript
- 16. Set window.location con dattiloscritto
- 17. Impossibile intercettare l'eccezione C++ utilizzando il catch (...)
- 18. Posso intercettare il generatore di sequenza F #?
- 19. Javascript data di cambiamento nel formato del (gg/mm/aaaa)
- 20. Come intercettare il codice di uscita nello script Bash
- 21. come animare il cambiamento borderColor in rapida
- 22. Qual è l'evento per intercettare l'invio del modulo in Javascript?
- 23. Come intercettare node.js richiesta espressa
- 24. get element, evento di cambiamento causato in javascript
- 25. Android: il cambiamento di default casa Application
- 26. Perché utilizzare window.location in un collegamento ipertestuale?
- 27. $ non viene attivato il cambiamento di matrice
- 28. Intercettare eccezioni
- 29. express.js - come intercettare response.send()/response.json()
- 30. jquery evento pasta di intercettare
Funziona per le app a pagina singola? In Angular e in altri framework SPA, l'URL cambia ma la pagina non si scarica/ricarica, quindi mi chiedo se questo evento si attiva. –
generalmente i framework forniscono eventi personalizzati per ottenere le modifiche di posizione – Nobita
@CarlG, nelle app a singola pagina, è possibile utilizzare 'onhashchange' per registrare un gestore se l'hash dell'URL è stato modificato. – shuangwhywhy