Autor | Zpráva | ||
---|---|---|---|
mac Profil |
#1 · Zasláno: 24. 2. 2009, 12:35:19
Nemate nekdo tipy, jak realizovat posunujici se text, aniz by dochazelo k neumernemu zatizeni CPU, tedy zpomaleni nebo "trhani" pohybu?
Text je psan velkym fontem (35em) a obsahuje desitky az stovky pismen. Zkousel jsem jak <marquee>, tak "style top, left" vcetne ruznych clipu. Ale vypada to, ze prohlizec (ff) se snazi namalovat vzdy cely text a proto to zpomaleni. Mozna by pomohla nejaka "chytristika" typu zobrazovat jen to, co je opravdu videt... |
||
strncpy Profil |
#2 · Zasláno: 26. 2. 2009, 12:44:25
Já bych tohle ani neoptimalizoval. Dneska se na webu používají různé šílenosti v js. Tohle není nic. Nad tímhle bych se ani nepozastavil.
Běžně si budou velké js knihovny spouštět několik takových timerů a všichni to používají. Nikdo netuší, že je to šíleně neefektivní. Dnešním více jádrovým procesorům to určitě problémy dělat nebude :-) |
||
Časová prodleva: 5 dní
|
|||
mac Profil |
#3 · Zasláno: 3. 3. 2009, 17:14:44 · Upravil/a: mac
hm, rychlym compum to opravdu nevadi, ale ja to potrebuji kvuli linuxovemu stroji, ktery neni nejnovejsi...
|
||
_es Profil |
#4 · Zasláno: 3. 3. 2009, 17:32:16
Rýchle riešenie by mohlo byť:
Vygenerovať z toho základného prvku, čo sa má pohybovať, ďalších niekoľko rovnakých, s iným umiestnením a skrytých. Potom ich postupne skrývať a zobrazovať tak, aby to vyzeralo ako pohybujúci sa text. Alebo podobné riešenie, no prvky by sa prekrývali a nastavovalo by sa, ktorý má byť "navrchu". |
||
Joker Profil |
#5 · Zasláno: 3. 3. 2009, 17:38:45
_es
Vygenerovať z toho základného prvku, čo sa má pohybovať, ďalších niekoľko rovnakých, s iným umiestnením a skrytých. Fuuuuj! Takže vyhledávací robot nebo někdo, kdo má z nějakého důvodu vypnuté nebo nastavené vlastní CSS, hlasovou čtečku a podobně, uvidí něco jako: jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text jezdící text ...obsah stránky... |
||
_es Profil |
#6 · Zasláno: 3. 3. 2009, 17:46:40
Joker
Myslel som vygenerovať JavaScriptom, čiže ten robot to uvidí len raz. |
||
Joker Profil |
#7 · Zasláno: 3. 3. 2009, 17:57:20
I tak mi přijde zbytečné generovat spousty totožných textů. Taky pokud text má "až stovky znaků" a posun by byl pomalejší, jsem zvědav, jak by generování několika stovek prvků a následné přepínání jejich viditelnosti zlepšilo výkon.
Bych spíš zkusil, jestli nepomůže přenastavovat třeba margin či padding nebo tak něco... ale IMHO spíš ne. Anebo text dát třeba jako flash animaci... jezdící text stejně nebude moc podstatný co do obsahu stránky. |
||
_es Profil |
#8 · Zasláno: 3. 3. 2009, 18:26:40
Joker
mac chcel riešenie menej zaťažujúce procesor. Ten môj návrh by tomu vyhovoval aj keď by to zas bolo náročnejšie na pamäť. Možno by procesor menej zaťažoval obrázok miesto textu v marquee. Alebo by možno pomohlo uzavrieť v marquee text do <div></div>, no skôr asi nie. |
||
mac Profil |
#9 · Zasláno: 4. 3. 2009, 09:10:53
Dekuji za navrhy a tesim se na da dalsi :-)
Asi bych mel trochu objasnit, k cemu ten jezdici text potrebuji. Jedna se o jakousi reklamni tabuli, kde pobezi onen text. Zadne dalsi informace (ani listy nebo menu, nic :-) ), zadny pristup uzivatelu a browser (ff) si mohu nakonfigurovat dle libosti. Ukazka je tady: http://mobilecity.cz/text.htm |
||
_es Profil |
#10 · Zasláno: 4. 3. 2009, 09:50:54 · Upravil/a: _es
mac
Je to hnusne roztrasené. Ľudia sa radšej pozrú niekam inam, aby ich neboleli oči, než že by ich tá "reklama" nejako upútala. No ak stále na tom trváš, tak vyzerá, že pomôže, ak je Firefox v štandardnom režime. Vlož na prvý riadok tento text: <!DOCTYPE HTML> Síce sa to tiež celé trasie, no už trochu menej nepríjemne. Pozri si dokumentáciu k <marquee>Keď to má byť čo najplynulejšie mal by byť asi parameter scrollamount čo najmenší - ideálne 1. |
||
mac Profil |
#11 · Zasláno: 4. 3. 2009, 10:12:06
K tomu "roztraseni" :-) To lze celkem efektivne ladit pomoci parametru scrollamount a scrolldelay, ale cim je scrolldelay mensi, tim je zobrazeni narocnejsi na cpu a v mem pripade tedy pomalejsi.
|
||
_es Profil |
#12 · Zasláno: 4. 3. 2009, 10:33:30
mac
V tej dokumentácii máš celkom dole odkaz, pomocou čoho je to <marquee> implementované. Čiže ak to spravíš priamo v tom, malo by to byť lepšie. No je otázne, či sa ti to vyplatí. |
||
Joker Profil |
#13 · Zasláno: 4. 3. 2009, 11:42:53 · Upravil/a: Joker
mac
Zkusil jsem dát dohromady takový jednoduchý skript: prvek s overflow:hidden, v něm další prvek s tím textem a skript ten vnitřní prvek posouvá uvnitř toho vnějšího. Sice tam je taky vidět překreslování, ale na mém počítači to vypadá podstatně lépe než <marquee>. Ukázka: skripty.webz.cz/test_scroll.html Z nějakého důvodu to ale ve FF výrazně víc zatěžuje procesor, než v ostatních prohlížečích (na 3GHz C2D Opera a IE7 1% zatížení CPU, FF3 kolem 15%... zdá se, že čím víc textu na obrazovce, tím větší vytížení) (edit: adresa ukázky -> odkaz) |
||
mac Profil |
#14 · Zasláno: 4. 3. 2009, 12:52:21
Joker, dik za ukazku. Vypada to zajimave, uvidime, co na to stroj s linuxem :-) Bohuzel to otestuji az o vikendu.
Asi bude ale opravdu potreba zobrazovat jen tu cast textu, ktera je opravdu videt. Pripadne i zkusim, jak by to fungovalo s obrazky. |
||
Časová prodleva: 15 let
|
0