php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.02.2010, 17:29   #1 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Browser History und Back Button mit Ajax

Servus,

verwende xajax und habe auch schon über google nach lösungen gesucht.
Meistens habe ich nur Lösungen für andere frameworks gefunden.

Habe mir selbst was dau überlegt.
Dachte mir man legt ein array an. funktion, parameter.
Sobald eine neue Funktion aufgerufen wird, wird diese an die erste stelle in
der liste hinzugefügt. Wenn der User also f5 drückt wird geschaut ob es die liste gibt wenn ja wird die erste funktion mit parameter geladen.

Das gleiche gilt für den Back button. Wenn drauf geklickt wird, wird das vorletzte element ausgelesen und geladen.

Was mir ihr dazu, funktioniert das so in der Art?

Mfg
jackie1983 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.02.2010, 17:33   #2 (permalink)
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 21.292
PHP-Kenntnisse:
Fortgeschritten
nikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblick
Standard

a) Back kannst Du nicht auswerten (das bekommt das Script nicht mit)
b) Nach F5 gibts keine Liste mehr.

Das "ich Dir dazu".
__________________
--
„Eins ist Fakt: Gescannt wird nackt!“

Privatsphäre 2.0 - Nacktscanner mit Eyetracking.
Unser Flugzeug darf kein geschlechtsfreier Raum sein.
--
nikosch ist offline   Mit Zitat antworten
Alt 08.02.2010, 17:42   #3 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
a) Back kannst Du nicht auswerten (das bekommt das Script nicht mit)
hmmm ok, mal schauen wie man es dann machen kann

Zitat:
Zitat von nikosch Beitrag anzeigen
b) Nach F5 gibts keine Liste mehr.
ähm doch wenn man es in einer session speichert.
jackie1983 ist offline   Mit Zitat antworten
Alt 08.02.2010, 17:50   #4 (permalink)
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 21.292
PHP-Kenntnisse:
Fortgeschritten
nikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblick
Standard

Okay, Session. Wieviel Undos will man aber speichern? Was, wenn komplexe Usereingaben den Ajax-Aufruf bestimmen. Und willst Du dann alle Kommandos der Queue durchlaufen? Sonst erhältst Du ja u.U. nicht das selbe Ergebnis.
Und die Back-Button-Problematik bleibt ja. Schon gar nicht löst man Problematiken rund um Bookmarks.
Content with Style - Fixing the Back Button and Enabling Bookmarking for AJAX Apps
__________________
--
„Eins ist Fakt: Gescannt wird nackt!“

Privatsphäre 2.0 - Nacktscanner mit Eyetracking.
Unser Flugzeug darf kein geschlechtsfreier Raum sein.
--
nikosch ist offline   Mit Zitat antworten
Alt 09.02.2010, 11:26   #5 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard

werde mir den link mal anschauen. thx
jackie1983 ist offline   Mit Zitat antworten
Alt 09.02.2010, 17:41   #6 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard

ok habe das thema jetzt soweit verstanden. Nur jetzt kommt die Frage zum Aufbau.
Wenn ich eine einfache seite mit 3 Bereichen habe, ist das ganz einfach. Man klickt auf 1 und der Inhalt wird geladen, #1 wird gesetzt fertig. Jetzt weis man das man mit #1 den Inhalt von Seite 1 aufrufen kann. Soweit so gut.

Nur bin ich leicht überfragt wenn es etwas komplexer wird. Arbeite mit xajax. Die Daten werden dann in php bearbeitet und anschließend im div angezeigt.
Was ist wenn ich variablen mit übergeben möchte diese kann ich ja schwer mit an das # hängen, wüste nicht wie.
Weis zur zeit nicht wie ich das ganze aufbauen muss.

Hatte mir schon überlegt eine Funktion zu programmieren die den content lädt. So muss ich immer nur eine Funktion mit bestimmten Parametern aufrufen und nicht für jeden link dessen Funktion aufrufen.

Meine Seite ist wie folgt aufgebaut, eventuell hilft das. Habe ein Topmenue mit 5 Einträgen.
Ein Submenue mit x Einträgen, je nach Seite mehr oder weniger.
Wenn ich jetzt auf Menü 3 klickte wird die Funktion x aufgerufen die den Inhalt lädt.
Dann klicke ich auf das Submenue 8, das ruft die Funktion y auf mit dem Inhalt.
Anschließend klicke ich im inhalt auf eine Funktion wobei das Menü nicht neugeladen wird und der Inhalt aktualisiert wird. Und hier muss ich Variablen mit übergeben.

Hoffe ihr versteht was ich meine und es kann mir jemand weiter helfen.

thx
jackie1983 ist offline   Mit Zitat antworten
Alt 09.02.2010, 17:46   #7 (permalink)
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 21.292
PHP-Kenntnisse:
Fortgeschritten
nikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblick
Standard

Hab ich in #4 schon geschrieben. Und fertige Parametersets lösen auch noch nicht die Problematik, dass Aktionen auch über die History voneinander abhängig sein können.
Hinkendes Beispiel:
Zitat:
Wenn ich jetzt auf Menü 3 klickte wird die Funktion x aufgerufen die den Inhalt lädt.
Dann klicke ich auf das Submenue 8, das ruft die Funktion y auf mit dem Inhalt.
Klicke ich jetzt auf Menü 4 müssen Menü 3 und Submenü 8 vorher geschlossen werden. Was nötig macht, dass ich aus der Hostory heraus weiß, dass die vorher offen waren.
Im konkreten Fall (daher hinkend) könnte man vorher immer alles pauschal schließen. Es gibt aber andere Anwendungen, bspw. die Ausführung verschiedener Sortiervorgänge via Ajax nacheinander, für die es keinen Workaround gibt. Man kann auch nicht alles cachen oder alle Parameterkombinationen abspeichern.
__________________
--
„Eins ist Fakt: Gescannt wird nackt!“

Privatsphäre 2.0 - Nacktscanner mit Eyetracking.
Unser Flugzeug darf kein geschlechtsfreier Raum sein.
--
nikosch ist offline   Mit Zitat antworten
Alt 09.02.2010, 18:09   #8 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard

Ja das Demo habe ich mir angeschaut, dort war es aber recht einfach mit nur 3 Seiten.
Und mein englisch ist nicht gerade das beste, so das ich durch die seite nur schwer durchsteige.... naja dann muss ich mal schauen wie ich das irgend wie hinbekomme.
jackie1983 ist offline   Mit Zitat antworten
Alt 10.02.2010, 10:01   #9 (permalink)
Benutzer
 
Registriert seit: 23.11.2009
Beiträge: 60
PHP-Kenntnisse:
Anfänger
jackie1983 befindet sich auf einem aufstrebenden Ast
Standard

so habe es soweit hinbekommen. Das einzige was mir noch fehlt ist das der Browser auf den wechsel von #link2 zu #link1 reagiert. Habe mir die Demo von oben angeschaut aber irgend wie sehe ich nicht aus dem Code wie er drauf reagiert. Kann es sein per Timer?
jackie1983 ist offline   Mit Zitat antworten
Alt 10.02.2010, 10:18   #10 (permalink)
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 273
PHP-Kenntnisse:
Fortgeschritten
xm22 befindet sich auf einem aufstrebenden Ast
Standard

Setzt zwar jQuery voraus, funktioniert aber (weitestgehend) wie Du das willst (schätze ich mal):Asual | jQuery Address - Deep linking for the masses
__________________
http://slayer2205.mybrute.com/
xm22 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
1111: AJAX meets PHP (indirectly) Nikolaus 2.0 Adventskalender 2008 5 15.12.2008 11:00
Probleme mit Sonderzeichen bei Ajax (prototype)... go1denboy JavaScript, Ajax und mehr 1 31.08.2008 18:44
Reset Button bei Formularen TeazY PHP Tipps 2008 2 24.12.2007 14:59
Fileupload via AJAX GSJLink HTML, Usability und Barrierefreiheit 11 07.09.2007 15:44
Mit Button 1.Seite in History zurück + MySQL-Eintrag löschen duerov PHP Tipps 2004 1 04.11.2004 10:51
Ich habe eine Auswahlliste und einen Button. Wie auswerten? PHP Tipps 2004 1 20.10.2004 16:39

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ajax browserhistory, ajax history back, jquery ajax back history, browser back button ajax, jquery ajax history back, ajax back button, php back button, browser zurück button anzeigen, jquery adress ajax f5, ajax history, zurück button php, ajax browser history prototype, browser history ajax, browser legt keine history an, prototype browser history, ajax browser back button, ajax browser history jquery, ajax back button prototype, jquery ajax back, ajax: browser back button

Alle Zeitangaben in WEZ +1. Es ist jetzt 13:45 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum