Autor Zpráva
kuzmic
Profil
Dobrý den,

chtěl bych se zeptat, jestli by mi neporadil někdo zkušený s vytvořením smyčky např. obrázku balónu, který po načtení stránky vyletí z pravé stránky prohlížeče a pomalým pohybem přeletí na druhou stranu prohlížeče a tak pořád dokola.

Samotná pohyb obrázku pomocí jQuery není složitý, ale nedaří se mi ho vytvořit do smyčky podle rozlišení.

Děkuji předem za jakýkoli tip a pomoc.

Kuzma
Bubák
Profil
Co tak pohybovat obrázkem na pozadí BODY a background-position v procentech?
kuzmic
Profil
Používal jsem v jQuery metodu animate a měnil jsem pozici css. Bohužel smyčka nikde natožtak aby obrázek "zaletěl" a znovu vyletěl z pravé strany.
peta
Profil
http://peter-mlich.wz.cz/web/js/prjpw/index.html#cas
Jednoduchá animace jako Marquee
http://axpsu.fpf.slu.cz/~web/x/sl3.htm
To posledni demo.

Samotna animace neni resena smyckou, ale casovacem. Smycku chapu jako prikaz for(i in objekt){} nebo for(i=0;i<delka;i++){}. Casovac se pri spusteni prida do planovace uloh. Planovac uloh ho pak spousti periodicky nebo jednorazove a v zavislosti na pocitacovem casu.

Pokud chces pocitat nejaky rozsah od-do, musis si do funkce pripsat nastaveni pocatecni hodnoty, pricitani a kontrolu konce. Pro program sl3.htm jsem si vypujcil chytre nastaveni z jquery slideru (link ve zdrojovem kodu sl3). Funguje to asi takto.
kroku_max = 5;
krok = 0;
vyska = 50; //px
// v casovaci
posun = easing(krok,kroku); //pouzije funkci easing, ktera to pocita krok/kroku a upravi to pro typ krivky, linearni, sinus a pod; vysledkem je obvykle cislo mezi 0 a 1, napr 0.1235; kdyz pocitas easing typu bouncing odrazeni, tak tam muze byt i 1.3 a -0,3, jakoze prejede pres okraj a pak se samozrejme vrati na 1
nastav_obrazek(posun * vyska);
if (krok==kroku_max) {zastav_casovac();}
krok++;
Jo, to byla vlastne bezna vec. Ale, co maji v jquery chytre je to, ze casovac funguje v zavislosti na case a nezavisle na kroku. Cili, kdyz zatizis pc, tak on dopocita jen krok, ktery by odpovidal uplynutemu casu.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: