"Otravné" přescrollování po zavření lightboxu

Issue #102 new
Michal Májský created an issue

David píše: "Jediné, co jsem si všimnul že mě nějak trochu otravuje je to zavírání a přeskrolovávání. Je dobře, že se dostanu na to místo opuštění galerie, ale jak to celý přeskakuje natvrdo vždycky odshora tak mě to trochu mate, co se to vlastně děje."

Navrhuju:

  • Nešlo by prohodit pořadí těch operací? Kdyby nejdřív došlo k odscrollování a až poté k zavření lightboxu, mohl by se ten scroll vlastně stát bez povšimnutí uživatele. Šlo by to?

Comments (8)

  1. Vašek Dohnal

    Otevřený lightbox a zavřený lightbox jsou dvě samostatné view se samostatnou URL, tj. zavření lightboxu vyvolá znovunačtení stránky. Je to vlastně úplně to samé jako tlačítko zpět.

    Já tomu ale stejně moc nerozumím, na jednu stranu je dobře, že se stránka odscroluje na místo fotky, ale to samotné odscrolování nevyhovuje.... nebude tedy úplně nejjednodušší, když to úplně vypnu a stránka se zobrazí vždy nahoře?

  2. Michal Májský reporter

    Žádoucí je, aby se uživatel po zavření lightboxu ocitl v místě, kde se nachází fotka, kterou zavřel. Nežádoucí je ten mezikrok, kdy se nejdřív ocitne na vrchu stránky a teprvé poté dojde k odscrollování. Napadá tě nějaké řešení odstranění tohoto mezikroku?

  3. Vašek Dohnal

    Je důležité pochopit, proč tam teď ten mezikrok vůbec je: potřebujeme, aby fungovalo tlačítko zpět, aby byla fotka samostatně linkovatelná a aby se vše chovalo konzistentně, pokud uživatel přijde přímo na detail fotky ⇒ a vše tohle je vyřešeno tak, že se jedná o dvě samostatné stránky. Zrovna tohle jsem řešil hodně dlouho a nenapadá mě nějaké rozumné řešení. Jediná cesta (o kterou jsem se snažil, ale nakonec zavrhl) je zařídit, aby jedno překrývalo druhé a vůbec tam nedocházelo k manipulaci s URL (resp. docházelo by k ní jen naoko)... to má ale zase celou řadu dalších problémů: nefunkční tlačítko zpět, co když uživatel refreshne stránku atd. atd. a proto doporučuji raději tudy nejít.

    Napadá mě, co bych mohl zkusit: rovnou použít window.scrollBy(x,x), možná to bude vypadat líp. Napadá tě ještě něco?

  4. David Čeřovský

    Mně nanapadá nějak nic, jen že teda je to trochu jako škoda, že všechno funguje tak skvělě a je tam tahle maličkost no :)

  5. Vašek Dohnal

    Myslím si, že metoda scrollBy() problém neřeší. Z mnoha technických důvodů (tlačítko zpět, refresh stránky pomocí F5, sdílení detailu fotky atp.) je celá galerie rozdělená na dvě samostatné stránky (fyzicky samostatné, tj. mají vlastní URL, která se dá poslat e-mailem atd. atd.):

    1. Detail galerie;
    2. Detail fotky.

    Jinými slovy pokud uživatel přijde na detail fotky a následně ji zavře, prohlížeč musí načíst stránku novou (přehled galerie) a to způsobí prodlevu. Jakmile dodělám integraci s Podiem (počítám tento týden), udělám analýzu tohoto tasku.

  6. David Čeřovský

    jasně, to nespěchá, myslim že to není nic tak důležitého. Radši se věnujme tomu Podiu nebo dalším věcem

  7. Log in to comment