Autor | Zpráva | ||
---|---|---|---|
lukaszafer Profil |
#1 · Zasláno: 2. 5. 2009, 12:40:15 · Upravil/a: lukaszafer
Ahoj,
Potřeboval bych něco jako je u flashe kolik ještě zbývá % do úplného načtení stránek zkoušel jsem i hledat na google,ale nic z toho mi nepomohlo ... :-) Nezná někdo něco spolehlivějšího nebo jak to udělat v JS a nebo PHP ... Děkuji za každou reakci. |
||
tomas657 Profil |
#2 · Zasláno: 3. 5. 2009, 19:49:24
Povedal by som, že PHP aplikácie sa načítajú tak rýchlo, že by si užívateľ ani nestačil všimnúť, že tam nejaké počítadlo percent je.... podľa mňa zbytočnosť.. i ked som možno zle pochopil... ale ak som správne pochopil, tak podľa mňa je to zbytočnosť...
|
||
Časová prodleva: 6 měsíců
|
|||
suvel Profil |
#3 · Zasláno: 10. 11. 2009, 11:29:29
Možná to až tak zbytečné není. Sám bych něco podobného rád využil na webu (php), který se po zadání určitých hodnot sám zavolá a z databáze načte nové hodnoty, provede někdy složité výpočty a pak nové výsledky zobrazí. Problém je v tom, že někdy načítání z databáze trvá trochu déle a na stránce se mezitím z hlediska uživatele nic neděje. Optimální by bylo, aby se po dobu načítání někde napsalo třeba "prosím, čekejte" nebo třeba maličký animovaný gif - hodiny s ručičkou nebo tak něco - a po načtení stránky to zmizelo. Už sedím přes hodinu u compu, hledám všude možně a když nechci Flash, který neumím, nic jsem nenašel.
Prosím, jestli jste to už někdo řešil, pomozte! Dík |
||
Bubák Profil |
#4 · Zasláno: 10. 11. 2009, 13:03:07
suvel:
„hledám všude možně a když nechci Flash, který neumím, nic jsem nenašel“ Pokud ti to bude stačit, uprav si tohle: http://teststranek.kvalitne.cz/obrazek-zobrazit-nacteny.html Protoče tě nezajímá načtení obrázku, událost onload dej na element BODY, který neskrývej. |
||
suvel Profil |
Díky. Jenže doteď se to snažím rozchodit a ten "čekací obrázek a nápis" se prostě nezobrazí. Abych měl jistotu, že nedělám nějakou jinou chybu, dal jsem si do těla skript <?while($x<9999999) {$x++;}?> a nechal si zobrazit načtení stránky:
<body onload='document.getElementById("hotovo").style.display="none"; alert("Dokument je načten"); '> Alert mi skutečně vyskočí až po několika vteřinách (mezitím se stránka načítá), ale do té doby, než vyskočí, se "čekací obrázek a nápis" prostě nezobrazí. Zkoušel jsem kde co, logicky mi to připadá správně napsané, ale prostě to nechodí. Co s tím? Kde je chyba? (Samozřejmě, že když tomu obrázku a textu zruším id, zobrazí se. Proč se na něj aplikuje display="none" okamžitě, když ještě stránka není načtená?) |
||
suvel Profil |
#6 · Zasláno: 11. 11. 2009, 08:40:41
Byl jsem včera asi v krizi. Samozřejmě to v mém případě nemůže fungovat, protože když volá php sám sebe, původní stránka zůstává v prohlížeči tak dlouho, dokud se na serveru neprovedou výpočty a není odeslána stránka nová. Tedy až pak dojde prakticky současně k události onUnload a onload. Tudy cesta nevede. Ale je vůbec nějaká možnost, jak v mezidobí mezi odesláním požadavku a načtení nové stránky indikovat uživateli, že se něco děje a aby čekal?
|
||
suvel Profil |
Nikdo nic? Pomoz si sám :-)
Nejspíš to není nejelegantnější řešení, ale funguje to. Princip je následující (umístěte soubory do jedné složky a spusťte soubor stranka.php): soubor "stranka.php": <h1> Hlavní stránka</h1> <p> texty,<br> grafika... <?while($x<9999999) $x++; // Simulace složitých výpočtů a čtení z databáze?> <FORM ACTION='./wait.php'> <INPUT TYPE='SUBMIT' VALUE=' OK '> </FORM> soubor "wait.php": <?echo file_get_contents("./stranka_w.php");?> <div style='position: absolute; top: 200px; left: 400px; margin: 0 auto;'> <h2>Čekej...</h2> </div> <SCRIPT LANGUAGE="JavaScript"> window.location.replace("./stranka.php"); </SCRIPT> soubor "stranka_w.php": <h1> Hlavní stránka</h1> <p> texty,<br> grafika... <FORM> <INPUT DISABLED TYPE=SUBMIT VALUE=' OK '> </FORM> Kdyby to někdo potřeboval... Samozřejmě, ideální by bylo, kdyby šla nějakou podobnou funkcí jako file_get_contents načíst jen grafika - sejmout jako obrázek? Nevím, ale nikde jsem napřišel na to, jestli a jak by to šlo. Tedy pokud to nechci celé programovat v nějakém vyšším jazyce... |
||
Časová prodleva: 14 let
|
0