Triko zdarma Triko zdarma
Extra 10 % bodů navíc a tričko zdarma při zadání kódu "TRIKO10"

Diskuze: Záporná hodnota

JavaScript JavaScript Záporná hodnota American English version English version

Aktivity (1)
Avatar
Filip Miska
Člen
Avatar
Filip Miska:9.5.2018 19:21

Dobrý den, mohl bych se zeptat proč mi to u function obrazekl() jde i do záporných hodnot ? Jde o galerii obrázků dělanou narychlo jen aby splnina účel u zkoušky. V pravo mi to přeskočí zpět na 1. obrázek ale v levo to jde pořád dál. Díky

obr = 1;
pocetobrazku =8;

//Tato funkce zobrazí následující obrázek
function obrazekp(){
    if (obr == pocetobrazku) {
        obr = 1;}
 else{
        obr++;
        document.images[0].src = obr+".jpg";}
}

function obrazekl(){
    if (obr == pocetobrazku) {
        obr = 1;}
    else{
        obr--;
        document.images[0].src = obr+".jpg";}
}
 
Odpovědět 9.5.2018 19:21
Avatar
Ondrca
Redaktor
Avatar
Odpovídá na Filip Miska
Ondrca:9.5.2018 19:26

Protože vlevo by to mělo vypadat aspoň takto:

function obrazekl(){
    if (obr == 1) {
        obr = pocetobrazku;}
    else{
        obr--;
        document.images[0].src = obr+".jpg";}
}
Nahoru Odpovědět 9.5.2018 19:26
Zase jsem o něco chytřejší
Avatar
Filip Miska
Člen
Avatar
Odpovídá na Ondrca
Filip Miska:9.5.2018 19:29

V tomto případě levé tlačítko nefunguje vůbec.

 
Nahoru Odpovědět 9.5.2018 19:29
Avatar
Odpovídá na Filip Miska
Matúš Olejník:9.5.2018 19:59

Keď ideš doľava tak dekrementuješ obr, takže podmienka by mala kontrolovať či obr sa rovná nule a ak hej tak prejsť na posledný

A inak keď si napr. na poslednom obrázku a stlačíš doprava tak len resetneš hodnotu ale obrázok nenastavíš nie? Takže sa ti po ďalšom kliknutí jeden vynechá.

Nahoru Odpovědět  +1 9.5.2018 19:59
/* I am not sure why this works but it fixes the problem */
Avatar
Filip Miska
Člen
Avatar
Odpovídá na Matúš Olejník
Filip Miska:9.5.2018 20:10

Díky, opraveno :-)

 
Nahoru Odpovědět  +1 9.5.2018 20:10
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:10.5.2018 7:28

Idealni je si promenne nekde vypisovat. Pres alert(), obj.innerHTML a pod.
Obcas mam kazdy druhy radek takovy vypis, abych zjistil, ve kterem miste neni cislo, ktere tam ma byt.

 
Nahoru Odpovědět 10.5.2018 7:28
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.