Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

URL adresa kod ajax poziva

[es] :: PHP :: URL adresa kod ajax poziva

[ Pregleda: 5157 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

S A J A
Beograd

Član broj: 226539
Poruke: 1816
*.static.sbb.rs.



+407 Profil

icon URL adresa kod ajax poziva27.04.2016. u 08:48 - pre 52 meseci
Zna li neko kako da updatujem URL adresu kod AJAX poziva?

Da objasnim: napravio sam nešto nalik Bazi Znanja, na stranici postoje dva diva, u levom je drvo sa kategorijama i tekstovima a u desnom divu se učitava sadržaj preko AJAX poziva. I to sve dobro radi. Samo mi se ne sviđa što se URL ne menja. Ako neko hoće da sačuva link nekog teksta, ne može, ili ako hoće da klikne na Back dugme, ne daje očekivani rezultat.

Sa druge strane, ne bih da koristim klasične linkove jer se onda učitava cela strana svaki put.

Evo ovako nešto bih hteo da postignem: http://docs.sencha.com/extjs/6...g_started/getting_started.html
 
Odgovor na temu

Nemanja Avramović
Software architect
Tap medical
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4382
*.dynamic.sbb.rs.

Sajt: https://avramovic.info


+45 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 09:49 - pre 52 meseci
Ovo nema veze sa PHP-om već sa JS-om: history.pushState

demo: http://html5demos.com/history
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1327
*.dynamic.sbb.rs.



+308 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 09:54 - pre 52 meseci
Kao što ti je Nemanja napisao, al' bih dodao još jednu stvar ...
Na serveru, prvi put, moraš ipak da gledaš i URL da bi odmah učitao
desni div sa odgovarajućim content-om na osnovu URL-a.
 
Odgovor na temu

S A J A
Beograd

Član broj: 226539
Poruke: 1816
*.static.sbb.rs.



+407 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 10:00 - pre 52 meseci
Da, verujem da nema mnogo veze sa PHP-om, samo sam ja radio projekat u PHP-u pa sam ovde napisao.

Video sam da se na netu spominje ta pushState funkcija ali kažu da je to nešto novo, da ne radi sa starijim brauzerima pa sam mislio da ima neko drugo rešenje. Znači, osim toga nema drugih rešenja? Kako se to postizalo ranije pre html 5?
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1327
*.dynamic.sbb.rs.



+308 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 10:01 - pre 52 meseci
Mislim da se nije postizalo, pošto nije bilo moguće menjati url bez reloada,
pada mi na pamet neka skalamerija sa hash-om.

Mislim da je ipak čistije rešenje da se koristi history.pushState tamo gde može
a tamo gde ne može fallback-ovati na full page reload.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12656



+4656 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 11:58 - pre 52 meseci
Citat:
dusans: pada mi na pamet neka skalamerija sa hash-om.

Upravo to, samo nije nikakava skalamerija :)

Ima bas i ne linku koji je Nemanja dao deo koji kaze:
Citat:
In a sense, calling pushState() is similar to setting window.location = "#foo", in that both will also create and activate another history entry associated with the current document


Uz, naravno, i razlike:
Citat:

The new URL can be any URL in the same origin as the current URL. In contrast, setting window.location keeps you at the same document only if you modify only the hash.
You don't have to change the URL if you don't want to. In contrast, setting window.location = "#foo"; only creates a new history entry if the current hash isn't #foo.
You can associate arbitrary data with your new history entry. With the hash-based approach, you need to encode all of the relevant data into a short string.
If title is subsequently used by browsers, this data can be utilized (independent of, say, the hash).
Note that pushState() never causes a hashchange event to be fired, even if the new URL differs from the old URL only in its hash.

 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2244 Profil

icon Re: URL adresa kod ajax poziva27.04.2016. u 12:22 - pre 52 meseci
Najbolji način (po meni) jeste pozivati ajax na osnovu hash vrednosti.. u slučaju gde browser history igra bitnu ulogu. Tačnije kroz window.onhashchange event.
Dakle, jedan prost event listener ...

Code (javascript):

window.onhashchange=function()
{
     // Ajax method + what else not here..
     // or ..
     // Ajax method with callback func. + what else not here...
     // - just! .. Right before ajax call. :)
};
 


.. ako ne želiš da koristiš history.pushState jer browseri, svi normalni i up-to-date, reaguju na history back/forward dugmiće kada ima hash promene.

Drugim rečima.

http://website.com/some_page


jeste jedna bookmark friendly stranica.

A ovo bi bila ...

http://website.com/some_page#ajax_fragment_inside_div_of_my_choice


.. takođe, url friendly bookmark-ready stranica, sa drugačijom sadržinom, ako se onhashchange + ajax combo, upotrebi na pravi način.

about:networking
 
Odgovor na temu

S A J A
Beograd

Član broj: 226539
Poruke: 1816
*.static.sbb.rs.



+407 Profil

icon Re: URL adresa kod ajax poziva28.04.2016. u 15:35 - pre 52 meseci
Sad sam čuo da pisanje ovakvih aplikacija nije dobro za SEO jer google ima problema da dobro skapira strukturu sajta ako se ne koriste prave stranice nego ajax pozivi.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12656



+4656 Profil

icon Re: URL adresa kod ajax poziva28.04.2016. u 15:45 - pre 52 meseci
Mozes ti napraviti i da svaka od tih strana ima svoj link koji ako se otvori direktno ucita ti kompletnu stranu sa onim sto bi ucitao ajax.
 
Odgovor na temu

[es] :: PHP :: URL adresa kod ajax poziva

[ Pregleda: 5157 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.