Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    16

    history.back() in pagina gestita con XMLHttpRequest (?!)

    Ciao a tutti,
    vi scrivo per porre un problema noto certamente a tutti quelli che bazzicano in ajax.
    Ho iniziato a gestire un sito che governa i contenuti con XmlHttpRequest, quindi ovviamente la pagina non viene ricaricata mai, ma solo i diversi div che cambiano contenuto. Per questo motivo, non esiste una cronologia della navigazione, motivo per cui quando l'utente clicca su "indietro" dal proprio browser, la pagina se ne va e basta. E questo è parecchio fastidioso sia in generale sia per quegli utenti più ingenui che se vedono che non torna indietro chiudono la finestra terrorizzati.
    Allora, questo è ciò che è noto a tutti. Io non mi sarei neanche posto il problema, se non avessi visto che GMAIL invece l'ha risolto, senza ricorrere al passaggio di dati al server: la pagina non viene mai ricaricata, ma quando clicchi indietro effettivamente il div principale torna al contenuto precedente.
    Scusate la banalità della questione, ma io per ora sono parecchio ignorante in merito (ho sempre lavorato solo via server). per cui sarò gratissimo a chiunque sappia spiegarmi come può succedere una cosa del genere!!
    grazie mille a tutti, spero di essere illuminato al più presto!
    un saluto

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    hash
    #

    qualsiasi cosa dopo il cancelletto nell' indirizzo non impone di ricaricare la pagina, non puo' essere letto direttamente lato server, ma puo' essere gestito via client e viene naturalmente salvato nella cronologia
    questo e' alla base di qualsiasi sistema che implementi back/forward, o aggiungi a preferiti, o comunque linking dall' esterno, per contenuti caricati in maniera asincrona

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    16
    ok, il cancelletto già lo utilizzavo tentando di pescare lato client ciò che seguiva ad esso nell'url, ma adesso è evidente che per quello che cercavo di fare serviva location.hash.
    In questo link viene messo in pratica quanto hai detto, ma non viene utilizzato semplicemente XMLHttpRequest per cambiare il contenuto del div. Visto che io non voglio fare copia e incolla dei loro js semplicemente perché funzionano, volevo capire se (e come faccio a documentarmi a proposito) si può far interagire una classica chiamata con xmlhttprequest di una pagina in un div, con le belle funzioni utilizzate nel link postato per gestire la history di navigazione, molto complete e cross-browser.
    Grazie mille per l'aiuto!

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    16

    chiarimento

    Nessuno ha ipotesi per me?
    Allora, innanzitutto provo a chiarire il problema così magari qualcuno può contribuire.
    Io vorrei una pagina che richiami i contenuti di un div da altre pagine, e ciò avviene con XMLHttpRequest, dove, cliccando sui tasti indietro e avanti del browser, vengano rispettivamente caricati i contenuti precedente e successivo del suddetto div.
    Tutto ciò mi è stato detto che è possibile con window.location.hash, inserendo dopo un # nell'url, dimodoché nella cronologia vengano salvati url diversi per ogni contenuto salvato nel div gestito da xmlhttprequest.
    Fin qui ci siamo. Il problema è che l'unico modo funzionante in cui sono riuscito ad ottenere quello che voglio è utilizzando la libreria Jquery e il plugin jquery.history.js per far interagire hash e cronologia del browser. ci sono due inconvenienti di questa soluzione:
    1) non sono io a farlo. e questo è un problema perché vorrei CAPIRE come si fa, non semplicemente trovare scripts funzionanti.
    2) il peso: più di 70kb di libreria implementati solo per far funzionare il plugin history - il che è assurdo.

    C'è qualcuno che sa spiegarmi o darmi links per documentarmi sul funzionamento di hash e sulla sua interazione con xmlhttprequest? Io continuo a sperarci! qualunque tipo di consiglio è assolutamente gradito, grazie mille a tutti per l'interessamento.
    ciao!

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    c'e' parecchia letteratura al riguardo, basta cercare

    per esempio trovi questo
    http://weblogs.asp.net/bleroy/archiv...nt-system.aspx
    che cita un sistema gia' funzionante da adattare a richieste asincrone non gestite da librerie
    http://onjava.com/pub/a/onjava/2005/...ck-button.html

    il resto e' reverse engineering...

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    16
    Grazie xinod per i links,
    io aggiungo - per chi stesse cercando info - anche questo link:
    http://acidmartin.wordpress.com/2009...ajax-websites/
    la cui spiegazione sembra essere abbastanza comprensibile.
    Adesso leggo bene la documentazione così capisco come funziona. Chiunque abbia ulteriori dritte o suggerimenti è ben accetto!
    cioa!

  7. #7
    scusatemi se riprendo questo post, ma non riesco a capire come mai su questo sito

    ... [Edit] ...

    Hai gia' una discussione tua sull'argomento, non puoi riesumare e colonizzare quelle degli altri...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.