Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957

    Controllare lo scorrimento

    Ciao a tutti.
    Volevo sapere se è possibile in js fare in modo che una pagina venga ricaricata riportando lo scorrimento esattamente dov'era prima.
    In pratica ho un form che devo inviare, una volta inviato la pagina deve aggiornarsi, ma vorrei che anche lo scorrimento tornasse nella stessa posizione di prima.
    In questo caso mi è impossibile usare le tag <a name..>.
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Perche` e` impossibile usare le ancore? E` proprio un gioco di ancore che devi usare.

    Per consigli piu` mirati devi pero` postare qualche informazione in piu`:
    - la pagina e` unica o il form sta su una popup o altro documento?
    - cosa risponde il server all'invio del form?
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957
    in pratica è una form unico in una pagagine. Nella pag c'è una tabella che cliccando su delle immagini va a modificare lo sfondo della cella e a cambiare un valore di un input di tipo hidden.
    Ci sono tanti input hidden, uno per cella.
    All'invio del form php salva in db la impostazioni e deve riproporre la pagine di prima reimpostando i valori (e gli sfondi delle celle) con le ultime impostazioni.
    Il mio obiettivo era quello di far si che oltre a tornare alla condizioni di prima si tornasse anche allo stesso livello di scroll.
    La pagina quindi è unica nn ci sono popup e il form richiama la stessa pagina aggiornandola.
    Grazie, ciao.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ok la cosa non e` troppo difficile.

    Diciamo che nella tua pagina hai una serie di ancore (invisibili).

    Diciamo che hai un'ancora all'inizio di ogni "riga" della tabella.

    Diciamo che tu modifichi una cella: ti viene modificato il campo hidden corrispondente, ed inoltre viene salvato il nome dell'ancora della riga in un ulteriore campo hidden (unico per tutto il form).

    Il server, quando reinvia la pagina, aggiunge l'ancora dove devi andare.


    Nota: e` un abbozzo di soluzione, che va ulteriormente elaborato e adattato alla tua pagina.
    spero di essere riuscito a rendere l'idea (credo sia piu` facile a farsi che a spiegarsi).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957
    mmh ho capito. Si in effetti potrebbe andare. Anche se così dovrei modificare il campo "action" del form aggiungendo sempre in fondo "..#nCella". Quindi per ogni modifica devo cambiare l'hidden e cambiare l'action.
    Giusto?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Io non modificherei l'action, ma userei un campo hidden in piu` (come ho gia` detto sopra). Poi sta al programma sul server interpretare tale campo ed aggiungere "#ancora" alla pagina da caricare (oppure un JS che faccia lo stesso all'evento onload).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957
    mi è venuta in mente una cosa....

    visto che una pagina ha un altezza di 700px, io non posso sapere se il client ha salvato da un link all'inizio della pag (a 0px)o alla fine (700px), e cmq senza un valore dello scroll non lo riporterò mai allo stesso punto :master:, ma o più in basso o più in alto...

    Visto che esiste windows.ScrollTo(z,y) non esiste una proprietà di JS del tipo document.y o document.yscroll .. che mi dica quanto è giù la barra di scorrimento?
    Grazie

  8. #8
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da GoldEmish
    Visto che esiste windows.ScrollTo(z,y) non esiste una proprietà di JS del tipo document.y o document.yscroll .. che mi dica quanto è giù la barra di scorrimento?
    Grazie
    codice:
    var fromTop=(window.pageYOffset)?window.pageYOffset:((document.documentElement && document.documentElement.scrollTop)?document.documentElement.scrollTop:document.body.scrollTop);
    ciao

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 © 2024 vBulletin Solutions, Inc. All rights reserved.