2012-02-01 12 views
7

Mentre lavoro su un'applicazione Web HTML5 che funziona come un'applicazione desktop, mi chiedo se il pulsante Indietro del browser debba essere utilizzabile o meno.L'applicazione Web HTML5 a una pagina non dovrebbe avere un pulsante Indietro?

In primo luogo, all'interno della mia app. Poiché il design è vicino a un'applicazione desktop, non cambio mai l'url, quindi non c'è nessuna storia, è un'applicazione a una pagina.

In secondo luogo, al di fuori della mia app. Tenderei a chiedere all'utente quando colpisce la storia precedente se vuole lasciare l'applicazione poiché il comportamento normale è quello di passare a un URL precedente, che credo non dovrei impedire.

Cosa ne pensi? Questo approccio è ragionevole?

Grazie!


dopo i commenti:

  • Quando c'è un pulsante Indietro sulla pagina broser, questo pulsante dovrebbero comportarsi in modo corretto. Sono d'accordo.

  • Ma se non esiste un pulsante Indietro, quindi può rendere l'applicazione Web più simile a un'applicazione (e meno come un sito Web). Ad esempio, le applicazioni di Google in chrome (ad esempio posta, calendario) quando vengono aperte in una finestra dedicata non visualizzano alcun pulsante Indietro.

Guarderò di più nella soluzione google per creare un'app Web in una finestra separata in esecuzione su Chrome. Mi chiedo se possa essere generalizzato.


Esempi trovati:

https://www.draw.io/ - Quando si va indietro, si apre una finestra di dialogo che chiede all'utente di scegliere di lasciare l'applicazione. Lo trovo pulito

+5

Se la vista cambia, l'utente si aspetta che il pulsante Indietro torni alla vista precedente. Rompere il comportamento che gli utenti si aspettano è un buon modo per renderli infelici. I browser moderni hanno una [grande API] (https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history#Adding_and_modifying_history_entries) per questo. –

+1

Hai detto che avresti chiesto all'utente quando ha colpito prima. Tuttavia, (parlando esclusivamente di esperienza personale) ho scoperto che di solito le persone non li leggono e spesso li trovano fastidiosi. Puoi evitarli? È possibile riportare l'utente al loro stato se accidentalmente colpisci di nuovo, quindi andare avanti per tornare alla tua app? – kush

+0

@Jordan: è necessario fornire una risposta in modo che possa essere revocato/accettato. –

risposta

7

(Per @ consiglio di NathanArthur, questo distacco come una risposta.)

Se la vista cambia quindi l'utente si aspettano il pulsante Indietro per riportarli alla visualizzazione precedente. Rompere il comportamento che gli utenti si aspettano è un buon modo per renderli infelici. I browser moderni hanno un great API for this.

+0

Ho aggiornato la mia domanda con la risposta. Cosa ne pensi? – unludo

+0

Se si prevede che molti utenti utilizzino l'app fuori dal browser (ad esempio, come si menziona, un'app Chrome o, ad esempio, Fluid), è necessario considerare le esigenze di tali utenti. Spesso le app native (specialmente sui dispositivi mobili in cui lo spazio dello schermo è limitato) hanno un pulsante "indietro" nell'interfaccia utente - è una metafora intuitiva per l'utente. L'utente vorrà "tornare indietro"? Solo qualcosa da considerare. –

+1

"Se la vista cambia ...", questa è esattamente la parte che è molto, molto difficile da definire. Cosa costituisce "la visione che cambia"? Modifica di una scheda in un controllo struttura a schede? Cambiare un filtro per una vista tabella? Espansione/compressione di un nodo di una fisarmonica o di un albero? Diventa ancora più complesso se si dispone di più di queste cose sullo schermo e si desidera supportare il pulsante Indietro. Diventa ancora peggio se l'utente assembla la vista, ad esempio, in un sistema basato su componenti. –

6

Perché, non spingere gli Stati alla storia? Lo raccomando davvero a te, perché dovresti cercare di non rompere il normale comportamento degli utenti, proveranno sempre a premere quel pulsante, se hanno cliccato su qualcosa per sbaglio. Potresti usare History.js.

Oppure c'è un motivo per non utilizzare la cronologia?

+0

Ho aggiornato la mia domanda con la risposta. Cosa ne pensi? – unludo

Problemi correlati