Domanda

Quando un utente visualizza una tabella paginata e richiede che venga ordinata per una colonna specifica, quale pagina viene visualizzata?

Esiste un comportamento previsto standard per questo scenario? Posso immaginare diversi esiti possibili, ma voglio sapere se esiste uno standard.

È stato utile?

Soluzione

Intendi quale pagina mostrare tra le n pagine della tabella? Non ci sono buone opzioni - ogni possibilità è probabilmente disorientante e frustrante per l'utente proprio perché non esiste uno standard e nessun motivo particolarmente valido per scegliere un'opzione rispetto all'altra. Se dovessi testare gli utenti, dubito che avrebbero aspettative coerenti. Anche lo stesso utente può aspettarsi cose diverse in momenti diversi. Le tabelle paginate forniscono anche un feedback relativamente debole sulla posizione corrente nella tabella, quindi è difficile per gli utenti capire dove si trovano dopo aver ordinato qualunque opzione tu usi. L'ordinamento utilizzabile è uno dei motivi per cui le tabelle paginate sono inferiori alle tabelle a scorrimento.

Delle possibilità:

  • Se hai un modo per mostrare un elemento (riga) attualmente selezionato o focalizzato nella tabella, puoi andare a qualunque pagina si trovi su quell'elemento, supponendo che gli utenti abbiano scelto di ordinare in quel momento per vedere altri oggetti come l'oggetto che stanno guardando. Ciò è coerente con alcune implementazioni delle tabelle di scorrimento. Tuttavia, la maggior parte delle tabelle di paging delle app Web non supporta la selezione di un elemento.

  • Puoi mostrare la i th sulla quale si trovano gli utenti al momento dell'ordinamento (ad es. se si trovano sulla terza pagina quando ordinano, mostra la terza pagina sotto la nuova ordinamento). Ciò è coerente con alcune altre implementazioni delle tabelle di scorrimento. Supporta anche il caso in cui la tabella è quasi ordinata correttamente (ad es. In Data di invio, quando è necessaria la Data di ricezione). Mostrare la i pagina mette gli utenti sulla "stessa pagina" che erano prima. Questo non è tuttavia il caso d'uso più comune e gli utenti probabilmente sentiranno di essere stati lanciati su una pagina arbitraria a causa del feedback debole sulla posizione. Questa opzione produrrà probabilmente il più grande disorientamento.

  • Puoi mostrare la prima pagina nel nuovo ordinamento. A seconda delle attività, forse la maggior parte delle volte quando un utente ordina una tabella, gli utenti sono interessati agli articoli con il valore più alto o più basso dell'attributo su cui sono ordinati. Mostrando la prima pagina, la probabilità che tu abbia ragione può avvicinarsi al 50%. È il meno disorientante perché l'utente sente di essere tornato ad un punto di ancoraggio mentale, l'inizio. D'altro canto, gli utenti potrebbero sentirsi frustrati se sentono di "ricominciare". Nel complesso, questa è probabilmente l'opzione migliore.

Generalmente seguendo un ordinamento, gli utenti vogliono passare agli elementi con un certo valore sull'attributo su cui sono ordinati. Questo è difficile con una tabella di paging perché il paging è lento e gli utenti non sanno quale numero di pagina corrisponde a quale valore. È possibile etichettare i collegamenti per le pagine con l'intervallo di valori trovati su di essi, ma ciò può consumare molta proprietà immobiliare. Per lo meno, dovresti sempre fornire un link alla prima e all'ultima pagina della tabella, tuttavia ci sono molte pagine in modo che gli utenti possano accedere agli elementi con i valori più alti e più bassi con un clic.

In alternativa, considera di supportare il filtro piuttosto che l'ordinamento per raggiungere lo stesso scopo. A seconda dell'attività degli utenti, ciò potrebbe funzionare molto meglio ed essere meno confuso e faticoso.

Altri suggerimenti

La risposta di Michael Zuschlag è molto buona, ma penso che il caso n. 1 e n. 2 che presenta sia davvero raro, e farlo può essere più confuso che utile.

A mio avviso, dovresti mostrare sempre la prima pagina nel nuovo ordinamento . Se l'utente ha selezionato un elemento, di solito non vuole ordinare nulla, perché ha già trovato quello che stava cercando.

Se si desidera assegnare un tipo di ordinamento a un elenco, in genere si desidera visualizzare l'ordine reale completo.

Uno scenario classico può essere un sito torrent:

  1. Cerco un torrent digitandone alcuni parole chiave.

  2. Dopo la ricerca ho un un elenco non ordinato, 50 voci per pagina.

  3. Vado alla seconda pagina.

  4. Ora, penso che sia meglio ordinare i risultati a partire dall'elemento che ha il maggior numero di seeders e fare clic sull'intestazione della colonna seed.

Mi aspetto di vedere l'oggetto con il maggior numero di seeders dopo l'azione 4, quindi dopo l'ordinamento devi mostrarmi la prima pagina. E penso che questo sia vero per qualsiasi situazione di smistamento.

Prima di tutto, AMEN alla risposta precedente (e +1) In secondo luogo, solo per esempi di vita reale di ciò che gli utenti conoscono e possono aspettarsi, Yahoo Mail fa il n. 3 (vai alla pagina 1 dopo l'ordinamento). Così fanno molti altri siti web.

La mia raccomandazione personale - se fattibile da implementare - sarebbe la numero 1 sopra (consenti di saltare alla pagina contenente l'elemento attualmente selezionato). Assicurarsi che l'elemento sia STILL selezionato.

Questo è al contempo intuitivo, poco prevedibile e molto utile nei casi in cui l'utente si preoccupa di ciò che accade. Inoltre, l'opzione n. 3 (passa alla prima pagina) è solo 1 clic di distanza per l'utente, supponendo che i controlli di paging includano " Vai a pagina 1 " ;, mentre, come notato nella risposta precedente, fare la prima pagina rende difficile e lungo utente che voleva rimanere con l'elemento corrente.

Sicuramente supporto " aggiungi filtro " idea anche se fattibile - mi trovo a utilizzare Excel per il 50% del lavoro con tabelle / elenchi originati da qualsiasi app / sito Web, grazie alla sua eccezionale combinazione di filtro e ordinamento. Forse YUI ha un discreto elemento di tabella filtrabile supponendo che l'interfaccia utente sia HTML?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top