| | |
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
Registrovaný: 07.07.08 Prihlásený: 26.06.20 Príspevky: 38 Témy: 10 Bydlisko: City 17 | Napísal Wicky: 05.07.2009 16:12 | |
|
Čaute, potrebujem poradiť ako spraviť aby som cez javascript nemusel každý prvok určiť samostatne ale aby sa po poradí samé pridávali. Neviem sa presne vyjadriť, tak som vytvoril príklad z ktorého ma dúfam pochopíte čo chcem. Kód: <h1>Jednoduchá animace javascriptem</h1> <span id="textik1" style="position:relative;left:20px;">T</span> <span id="textik2" style="position:relative;left:40px;">e</span> <span id="textik3" style="position:relative;left:60px;">x</span> <span id="textik4" style="position:relative;left:80px;">t</span> <span id="textik5" style="position:relative;left:100px;">,</span> <span id="textik6" style="position:relative;left:120px;"> </span> <span id="textik7" style="position:relative;left:140px;">T</span> <span id="textik8" style="position:relative;left:160px;">e</span> <span id="textik9" style="position:relative;left:180px;">x</span> <span id="textik10" style="position:relative;left:200px;">t</span>
<script>
var stylTextu1 = document.getElementById("textik1").style; var stylTextu2 = document.getElementById("textik2").style; var stylTextu3 = document.getElementById("textik3").style; var poziceX1 = 20; var poziceX2 = 40; var poziceX3 = 60;
var poziceY1 = 0; var poziceY2 = 0; var poziceY3 = 0; var koniecX = 0; var posun = 200;
function start(){ window.setInterval("krok1(-10,0)", 500) window.setInterval("krok2(-10,0)", 500) window.setInterval("krok3(-10,0)", 500) }
function krok1(stepX,stepY){
if(poziceX1<koniecX){poziceX1+=posun} poziceX1 += stepX; poziceY1 += stepY; stylTextu1.left = poziceX1 + "px"; stylTextu1.top = poziceY1 + "px";
} function krok2(stepX,stepY){
if(poziceX2<koniecX){poziceX2+=posun} poziceX2 += stepX; poziceY2 += stepY; stylTextu2.left = poziceX2 + "px"; stylTextu2.top = poziceY2 + "px";
} function krok3(stepX,stepY){
if(poziceX3<koniecX){poziceX3+=posun} poziceX3 += stepX; poziceY3 += stepY; stylTextu3.left = poziceX3 + "px"; stylTextu3.top = poziceY3 + "px";
}
start()
</script> chcem len docieliť aby som nemusel písať function krok215(); ale aby to samo v jednom "kroku" spravilo od 0-9999999 Skúšal som aj stylTextu dať do pola, aby som cyklom while len vypisal postupne ale neslo - Kód: var i = 1; while(i<4){ var stylTextu[i] = [document.getElementById("textik"+i).style]; i++;}
toto nefunguje, neviem prečo... .
a tak som myslel že by sa to nejak dalo cez new daco; abo objekt abo co to je, nwm tu sa v JS nevyznám, vopred vďaka
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 05.07.2009 17:13 | |
|
Co znamena "nefunguje"? Najlepsie by bolo, keby si si do prehliadaca doinstaloval nejaky JS debugger.
Kód: var stylTextu[i] = [document.getElementById("textik"+i).style]; Toto nie je dobre, pretoze [] je zapis pola s jedinym prvkom document.getElementById("textik"+i).style. Teda by si musel pristupovat k tomuto stylu ako stylTextu[i][0]. Pouzi Kód: var stylTextu[i] = document.getElementById("textik"+i).style;
|
|
Registrovaný: 07.07.08 Prihlásený: 26.06.20 Príspevky: 38 Témy: 10 Bydlisko: City 17 | Napísal autor témy Wicky: 05.07.2009 19:27 | |
|
Citácia: Pouzi kód: var stylTextu[i] = document.getElementById("textik"+i).style;
toto som skusal rôzne obmieňať, ale keď chcem vypisať stylTextu[1]; tak nic
ale, uz som asi prisiel na riesenie, ked to pojde tak to tu dam. Abo mozte to tu aj zmazat,. dik za pomoc
_________________ "We are willing to suffer, to die for the things we care about. For love, for the right choices." |
|
Registrovaný: 07.07.08 Prihlásený: 26.06.20 Príspevky: 38 Témy: 10 Bydlisko: City 17 | Napísal autor témy Wicky: 05.07.2009 22:48 | |
|
Tak prerobil som to trochu ale nastal jeden problém v exploreri to mierne blbne, tu je ukazka http://www.dornas.ic.cz/texty.html
Kód: <span id="textik1" style="position:relative;left:20px;">T</span> <span id="textik2" style="position:relative;left:40px;">e</span> <span id="textik3" style="position:relative;left:60px;">x</span> <span id="textik4" style="position:relative;left:80px;">t</span> <span id="textik5" style="position:relative;left:100px;">,</span> <span id="textik6" style="position:relative;left:120px;"> </span> <span id="textik7" style="position:relative;left:140px;">T</span> <span id="textik8" style="position:relative;left:160px;">e</span> <span id="textik9" style="position:relative;left:180px;">x</span> <span id="textik10" style="position:relative;left:200px;">t</span>
<script> var pocet = 10; pocet++; //Zadaj počet pismen
var i = 1; while(i<pocet){ var stylTextu = new Array(); stylTextu[i] = document.getElementById("textik"+i).style;
var poziceX = new Array(0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200); i++;}
var poziceY = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); var koniecX = 0; var posun = 400;
function start(i){
var i = 1; while(i<pocet){ window.setInterval("krok(-20,0,"+i+")", 400)
i++;} }
function krok(stepX,stepY,i){
if(poziceX[i]<koniecX){poziceX[i]=posun} poziceX[i] += stepX; poziceY[i] += stepY; var toto = stylTextu[i]; document.getElementById("textik"+i).style.left = poziceX[i] + "px"; toto.top = poziceY[i] + "px"; }
start()
</script>
Zatiaľ to nefunguje na osi Y, ale o to mi ani nešlo.
tak ak by dakto vedel poradiť prečo to v Exploreri robí to čo robí bol by som vďačný
PS: v Opere to ide tak ako na FireFoxe
_________________ "We are willing to suffer, to die for the things we care about. For love, for the right choices." |
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 06.07.2009 7:54 | |
|
"toto is undefined" hm... skus takto?
Kód: // premisti prvek document.getElementById("textik"+i).style.left = poziceX[i] + "px"; stylTextu[i].top = poziceY[i] + "px";
|
|
Registrovaný: 07.07.08 Prihlásený: 26.06.20 Príspevky: 38 Témy: 10 Bydlisko: City 17 | Napísal autor témy Wicky: 06.07.2009 11:34 | |
|
OK DIKI MOC.. neviem preco sa Object nechce uložiť do prvku poľa,
ale vyriešil som to takto
Kód: document.getElementById("textik"+i).style.top = poziceY[i] + "px";
moc diki za pomoc. ze vobec aspon niekto bol ochotny.
_________________ "We are willing to suffer, to die for the things we care about. For love, for the right choices." |
|
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| ako co najviac setrit batarku v Notebooky a netbooky | 6 | 725 | 04.04.2010 17:01 Jaro | | Ako dostat zo zvukovky najviac. v Zvuk | 25 | 1283 | 09.10.2008 19:53 jot | | Ako zistit co najviac info o navstevnikovi? v PHP, ASP | 8 | 880 | 24.02.2011 19:37 camo | | Ako si vylepšiť tento pc čo najviac za 530 € v PC zostavy | 9 | 776 | 23.08.2009 8:44 pukepulos | | Ako zistit, co najviac spomaluje moj pc(ciuz hard. abo soft) v Ostatné | 10 | 2543 | 18.09.2007 17:29 paulix | | ako sa vola tento script v JavaScript, VBScript, Ajax | 1 | 518 | 07.02.2010 13:37 rooobertek | | skratit retazec na 10 znakov v PHP, ASP | 2 | 572 | 11.03.2010 18:27 1daemon1 | | Ako spustiť script editáciou registrov - logon/logoff v Operačné systémy Microsoft | 2 | 624 | 24.05.2010 13:06 tairikuokami | | script na upload fotiek ako ma facebook v JavaScript, VBScript, Ajax | 3 | 703 | 31.10.2009 3:02 lama2d | | Skratit HD film aby vosiel na DVD v Video programy | 6 | 1386 | 28.12.2009 22:09 prandof | | JS script pre menenie obrazkov, poradte ako prerobit v JavaScript, VBScript, Ajax | 5 | 1598 | 23.08.2008 7:40 B.A.X.O | | [VYRIESENE] stary script (asi :( ) ako ma vyzerat v php5? v PHP, ASP | 11 | 512 | 18.03.2009 8:24 geetee | | ako sa dozvie stránka(script) v akom rozlíšení je spust v JavaScript, VBScript, Ajax | 1 | 1265 | 07.04.2006 22:00 Intelman | | ako spustit pomocou cron PHP script aj s predanou premennou? v PHP, ASP | 3 | 761 | 04.08.2010 9:13 pohoda | | "roletka" , ako na prislušný script v php v HTML, XHTML, XML, CSS | 7 | 773 | 21.11.2007 22:06 johny128 | | Najviac zavislacka hra [ Choď na stránku: 1, 2, 3, 4, 5 ] v Počítačové hry | 136 | 6945 | 19.12.2011 18:04 lukiness |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|