Autor | Zpráva | ||
---|---|---|---|
medden Profil * |
#1 · Zasláno: 24. 5. 2007, 20:11:50
Zdravím,
nejakú chvíľu mám v hlave nápad, ako by sa dal riešiť častý problém vytýkaný AJAXu, totižto nie je možné aby adresa v adresnom riadku presne korešpondovala s tým, čo je na stránke (popieranie princípov URL). Nedalo by sa spraviť to, aby sa do adresného riadku dala Javascriptom iná adresa, niečo na spôsob window.location = "..." bez toho, aby došlo k presmerovaniu? Takto by sa pri nejakej AJAXovej udalosti, keď sa mení obsah stránky menila spolu s tým aj URL, a keď by došlo k refreshu stránky, tak by server naservíroval presne to čo chceme. Nie som až tak to hĺbky znalý Javascriptu, preto pýtam pomoc, dúfam že niekto bude mať nápad ako to poriešiť. |
||
ah01 Profil |
#2 · Zasláno: 24. 5. 2007, 21:21:43
Tenhle způsob se běžně používá, koukni se třeba na mapy.cz. Pohni s mapou a pozoruj adresu.
|
||
DJ Miky Profil |
#3 · Zasláno: 24. 5. 2007, 22:31:50
ah01
Myslím, že se ptal, jak to udělat, ne jestli to jde udělat... :-) |
||
centi Profil |
#4 · Zasláno: 24. 5. 2007, 23:11:40
location.hash - Ak si pozornejšie všimnete príklad mapy.cz od ah01, tak vidíte, že sa nemení celá URL, ale len tzv. hash (to čo je za mriežkou #) a preto sa stránka nereloadne. Je potom otázkou serverového skriptu, ako takúto URL (s potrebnými dátami za #) spracuje a aké výsledky vráti pri reloade.
|
||
ah01 Profil |
#5 · Zasláno: 24. 5. 2007, 23:16:29
Myslím, že z toho příkladu je to patrné. Využívá se window.location.hash, což je ta část adresy za #. Při změně na stránce se tahle část adresy patřičně změní. Po načtení stránky a to ať už z oblíbených, tlačítkem zpět nebo zadáním přesné adresy se tenhle řetězec zkontroluje (musí se to dělat v JS, protože tahle část adresy se na server neodesílá) a stránka se patřičně přestaví. Co si do adresy poznamenávat, závisí na konkrétní aplikaci. Existuje ale několik „history“ knihoven, pokud si to nechceš programovat sám, stačí použít google.
|
||
medden Profil * |
#6 · Zasláno: 26. 5. 2007, 10:01:34
ah01
Díky moc, to je presne to čo som hľadal. |
||
zero0x Profil |
#7 · Zasláno: 27. 5. 2007, 08:19:32
wow to je perfektne, si tuto diskusiu ihned pridavam do hmm.sk ;-)
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0