Autor | Zpráva | ||
---|---|---|---|
norman Profil * |
#1 · Zasláno: 9. 9. 2012, 14:10:06
Přeji dobrý den,
měl bych dotaz, věděl by jste někdo jak na následující problematiku? Mam prezentaci na ajaxu a url měním pushstate, když však přejdu pomocí tlačítka zpět v prohlížeči stane se to, že se změní url ale obsah nikoliv, nevíte někdo jak handlovat tlačítko zpět v prohlížeči? Popřípadě, nevíte někdo jak zacházet s .bind('popstate') v jquery, pjax to vyřešil, ale nebyl jsem schopný dohledat jak. Google mi taky moc nepomohl. |
||
pcmanik Profil |
#2 · Zasláno: 9. 9. 2012, 15:44:35
Podľa dokumentácie k manipulácii s históriou browsera to ľahko pochopíš. Resp. si môžes pozrieť priamo dokumentáciu k udalosti onpopstate.
|
||
norman Profil * |
#3 · Zasláno: 9. 9. 2012, 16:26:19
No, nezlobte se, ale jsem natvrdlý.
Mohli by jste mě ukázat jak asi by to přibližně mohlo vypadat, zkoušel jsem to takto, $(window).bind('popstate', window.history.back()); ovšem to to se chová divně, já hlavně nemůžu pochopit ten event, kdy se spustí proč se spustí. Mohl by jste mi někdo ukázat jak když dojde k push state jak při tlačítku back(v browseru) změnit windows.location.href ?? Díky, předem.. |
||
pcmanik Profil |
#4 · Zasláno: 9. 9. 2012, 16:52:36
norman:
Pomocou parametrov funkcie pushState sa ti zmení url webu a zapíše sa do histórie prehliadača. Akonáhle klikneš na tlačítko späť, spustí sa ti udalosť popstate. V ktorej pomocou event.state môžes získať nejaké dáta čo si si pomocou pushState uložil. Teda: var stateObj = { foo: "bar" }; history.pushState(stateObj, "page 2", "bar.html"); window.onpopstate = function(event) { console.log(event.state) // Vypíše obsah premennej stateObj console.log(location.pathname) // Vypíše /bar.html }; |
||
norman Profil * |
#5 · Zasláno: 9. 9. 2012, 17:04:12
pcmanik:
Mockrát děkuji, ani nevíš jak mi to pomohlo :) |
||
Časová prodleva: 13 let
|
0