Prodej projektu Duchod.cz - cena 550 tis Kč. Dále MojeFinance.cz, DuchodovaReforma.cz
Zobrazují se odpovědi 1 až 7 z 7

Web: načíst a zobrazit obrázek, až po něm JS; jde to?

  1. Marně pátrám po funkčním řešení problému: jednoduchá stránka, obsahující obrázek a JS kód; přičemž má fungovat tak, že se vždy prvně načte a zobrazí obrázek a teprve pak (tj. po parsování a vykreslení) se načte a vykoná JS.

    Zkoušel jsem atributy async defer, ale to mi občas nefungovalo tak, jak potřebuju.

    Stručný nástřel je tady.

    Existuje řešení?

  2. Co se právě děje na Webtrhu?
  3. event .load nebo atribut .complete, v jquery event load, chová se odlišně při prvním načtení a načtení z cache, takže záleží, co je cílem. Zda se skript spustí před načtením obrázku nebo po není podstatné.

  4. Zda se skript spustí před načtením obrázku nebo po není podstatné.
    Nu, v mém případě to je podstatný. Jde o to, že obrázek má sloužit jako splash screen a ihned se zobrazit; teprve pak se má načíst a spustit skript, ten připraví obsah stránky a až bude hotovo, obrázek se odstraní a zobrazí se požadovaný obsah stránky.

  5. to není vůbec snadné. Prostě si samotným JS až je připravený odstraň ten splash, což může být full page overlayer. Nebo si tam přidej další JS, který bude kontrolovat, jestli ten první již svoji práci udělal a můž zobrazit stránku...

  6. Tohle chápu; jde mi ale o to, aby se nikde nečekalo. Stránka je téměř prázdná, je na ní jeden div s obrázkem a ten se má zobrazit okamžitě bez jakékoli prodlevy a teprve pak se má stahovat a provádět ten JS.
    Ostatní už si umím zařídit (doufám), ale tohle se mi fakt nedaří vyřešit.

    Web se bude zobrazovat primárně na mobilu, půjde o PWA a chci okamžité spuštění (tj. zobrazit splash) bez čekání na JS.

  7. tak ten JS na splash screen (a klidně obrázek, pokud není velký) dej přímo do html, vykoná se to okamžitě načtení a prodleva je v podstastě nulová.

  8. Jo, to vypadá, že to funguje: obrázek vložen přímo přes base64.
    Díky za pomoc!

Hostujeme u Server powered by TELE3