| Autor | Správa |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: So 24.12.11 15:20 |   |
Zdravim,
potrebujem v JS spravit nieco take, ze v jednom DIVe sa mi budu menit cisla, ktore si sam zvolim..
Napriklad cisla:
4 56 3 98 234
Tie tipujem, ze bude treba ulozit do pola.. potom to bude dokolecka prechadzat polom a rychlo sa budu tie cisla menit..
Potrebujem to na nieco podobne ako zlosovanie.. to znamena, odstartujem to a potom to zastavim a ostane mi tam cislo..
Neviem ale, ako spravit to, aby sa to menilo urcitou rychlostou..
Ako na to? Dakujem moc krat |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
don jebot
 Užívateľ
 Založený: 03.04.2008 Príspevky: 3453 Bydlisko: Trnava
 | Zaslal: Ne 25.12.11 14:10 |   |
|
  |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 |
No, je to dost problemove.. Cisla potrebujem menit dost rychlo.. A to jaksi moc nejde,, Browser sa sekne a zobrazi zo 100 cisiel napriklad 3.... Alebo iba konecne...
Nerobil nieco podobne niekto?
Aby to islo rychlo, ale plynule.. |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
Ďuri
 Administrátor
 Založený: 11.08.2007 Príspevky: 3785 Bydlisko: Brno
 | Zaslal: Ut 27.12.11 14:54 |   |
Ved pouzi uplne jednoduchy setInterval alebo rekurzivne volany setTimeout. Neurcujes si tam rychlost, ale cas, po kolkych milisekundach sa dana akcia vykona.
Najlepsie bude, ked nam ukazes, co si spachal, aby sme ti vedeli povedat, kde robis chybu. |
| |
    |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 |
Och, asi som bol moc prejedeny
Je to cez setTimeout uplne easy
Keby to niekto hladal, tak:
| kód: | var mena = new Array();
mena[0] = 'abc';
mena[1] = 'abcd';
mena[2] = 'abdc';
mena[3] = 'arbc';
mena[4] = 'atbc';
mena[5] = 'abyc';
max = 5;
var odpocitavaj = 1;
function losuj()
{
if(odpocitavaj == 0) return;
jQuery("#tlacidlo").attr('onClick', 'stop()');
jQuery("#tlacidlo").html('Stop!');
//if(cislo == -1) cislo = max;
cislo = Math.floor(Math.random()*(max+1));
jQuery('#cislo').html(cislo);
if(odpocitavaj == 1)
{
setTimeout("losuj()", 50);
}
}
function stop()
{
odpocitavaj = 0;
jQuery("#tlacidlo").attr('onClick', 'zobraz()');
jQuery("#tlacidlo").html('Zobrazit meno!');
}
function zobraz()
{
index = jQuery("#cislo").html();
meno = mena[index];
jQuery("#meno").html(meno);
jQuery("#tlacidlo").html('Gratulujeme!');
} |
v HTML treba mat DIVy: cislo, meno
A klikatelny <a> s ID tlacidlo
To ale asi kazdemu doslo
Dakujem za pomoc  |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
Ďuri
 Administrátor
 Založený: 11.08.2007 Príspevky: 3785 Bydlisko: Brno
 | Zaslal: St 28.12.11 12:47 |   |
Pre viazanie handlerov udalosti nikdy nepouzivaj attr, fuj. Co takto jQuery('#tlacidlo').click(stop)? (Pre odstranenie naviazaneho handleru potom pouzi unbind())
Polia sa daju takisto vytvarat velmi jednoducho zapisom var pole = ['abc', 'def', 'ghi']. |
| |
    |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: St 28.12.11 15:29 |   |
A preco je to lepsie? |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
Ďuri
 Administrátor
 Založený: 11.08.2007 Príspevky: 3785 Bydlisko: Brno
 | Zaslal: St 28.12.11 15:51 |   |
Lebo ked je raz nieco vykonatelny kod, nema to byt retazec ("eval is evil", to si predpokladam uz pocul). Tie nevyhody som trochu nacrtol tu.
Jo a inak, ak raz mozno budes chciet pisat cisty Javascript (co by si mozno mohol niekedy vyskusat, lebo sa podobas na dalsi z pripadov, ktory sa snazi platat nejaky jQuery paskvil bez toho, aby rozumel zakladnym principom) a podla tohto vzoru budes chciet naviazat handler udalosti pouzitim setAttribute, nebude ti to v niektorych prehliadacoch fungovat. |
| |
    |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: St 28.12.11 16:08 |   |
oks dik... Kazdopadne, JS sa absolutne nevenujem..
Toto som potreboval len narychlo, pre 1 zariadenie, pre 1 konkretny browser Tam to ide ako ma
Ale rad sa priucim  |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
|
Nemôžete pridávať nové témy do tohto fóra. 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. Nemôžete hlasovať v tomto fóre.
|
|