Kako izpopolniti paging?
4 naročniki
4 naročniki
Pozdravljeni.
Imam sledeči problem. Naredil sem aplikacijo, kjer uporabnik brska po tekstovnih zapisih ( slovarju ), ki jih je okrog 10.000 Zapise je mogoče na več načinov filtrirati, to deluje v redu. Težave nastopijo, ko želi uporabnik pregledati vse zapise in to sortirano po abecednem zaporedju, zaporedni zapisi pašejo skupaj in lajšajo pregledovanje/urejanje. Omogočen je tudi paging po straneh, v obliki linkov na strani:
1 2 3 4 5 . . . 486 ali 1 . . . 345 346 347 348 349 . . . 486 ko je človek nekje globoko. Vprašanje je, kako narediti uporabniku najbolj prijazen UI, da bo lahko danes začel, kjer je včeraj končal? Možnosti, ki se ponujajo:
- prikazati linke na vse strani... preveč nepregledno, preveč prostora na vmesniku
- polje, kjer uporabnik vpiše stran, namesto da jo klikne,... premalo WEBovsko, uporabniki raje klikajo
- checkbox v filtrih (lahko tudi gumb), ki te postavi na stran z zapisom, ki je bil nazadnje spremenjen/vpisan
- spremeniti paging v obliko 345 346 347 348 349 . . . X . . . 486, kjer je X stran z zapisom, ki je bil nazadnje spremenjen/vpisan - tole mi je še najbolj všeč, čeprav je nekoliko bolj komplicirano.
Kaj mislite? Pozna kdo boljšo varianto?
Hvala za vsak namig.
5 odgovorov
Tudi jaz sem bil v podobni dilemi, vendar sem spoznal, da je pri tako obsežnih bazah po mojem mnenju med preglednim vmesnikom (minimalistično kar se da) ter uporabno funkcionalnostjo (hiter skok na poljubno stran) najboljši kompromis vnosno polje, ki reagira na onblur or onchange event.
En primer iz žive baze, kako izgleda paging na 1. strani, nekje vmes in zadnji strani z 82.572 zapisi pri prikazanih 15 zadetkih na stran:
Strankam smo na vmesniku omogočili, da si v nastavitvah sami nastavijo željen tip paging-a, vendar odkar smo implementirali zgornjo rešitev, mislim, da nihče več ne uporablja stare metode, ki je bila na ta stil:
1 2 3 ... 120 121 122 ... 82570 82571 82572
@Gogy: Nerad uporabljam piškotke, raje informacije o uporabniku shranim na serverski strani, če že imam vso infrastrukturo za to.
@urosbe: Tvoja rešitev je dobra, ker je splošna, se strinjam. Kljub temu bom poleg vnosnega polja za stran nekam postavil tudi link v stilu 'Zadnje spremenjeno', da uporabniku ne bo treba razmišljat, kje je nazadnje končal z delom... si zapisujem čas spremembe zapisa.
moj nasvet. ukini paging. naj uporabi obvezne filtre. vse kar je nad 200 zadetkov je za uporabnika neobvladljivo.
Tudi to je argument. Vendar pa mora nekje obstajati nek pregled, kjer lahko pogledaš, kaj sploh imaš v bazi. Npr. pri artiklih v spletni trgovini imaš lahko filter glede na status, glede na prvo črko naziva, ceno od / do,... Nikoli pa ne veš, če si katerega spregledal. Zato imajo nekateri uporabniki, posebno če niso vešči uporabe filtrov, najraje sekvenčni pregled po straneh.