Autor Zpráva
SirDoxik
Profil
Omlouvám se, ale nevěděl jsem jak to pojmenovat. Mám:
<script>function mover(select) {
var selection = select;
var lastposition = 0;
    if (selection==1) {
        if (lastposition==1) {
            alert("1,1");
            lastposition = 1;
        }
        if (lastposition==2) {
            alert("1,2");
            lastposition = 1;
        }
        if (lastposition==3) {
            alert("1,3");
            lastposition = 1;
        }
        if (lastposition==4) {
            alert("1,4");
            lastposition = 1;
        }
    }
    if (selection==2) {
        if (lastposition==1) {
            alert("2,1");
            lastposition = 2;
        }
        if (lastposition==2) {
            alert("2,2");
            lastposition = 2;
        }
        if (lastposition==3) {
            alert("2,3");
            lastposition = 2;
        }
        if (lastposition==4) {
            alert("2,4");
            lastposition = 2;
        }
    }
    if (selection==3) {
        if (lastposition==1) {
            alert("3,1");
            lastposition = 3;
        }
        if (lastposition==2) {
            alert("3,2");
            lastposition = 3;
        }
        if (lastposition==3) {
            alert("3,3");
            lastposition = 3;
        }
        if (lastposition==4) {
            alert("3,4");
            lastposition = 3;
        }
    }
    if (selection==4) {
        if (lastposition==1) {
            alert("4,1");
            lastposition = 4;
        }
        if (lastposition==2) {
            alert("4,2");
            lastposition = 4;
        }
        if (lastposition==3) {
            alert("4,3");
            lastposition = 4;
        }
        if (lastposition==4) {
            alert("4,4");
            lastposition = 4;
        }
    }
}</script>


<div class="nav">
                <ul>
                    <li><a href="#" onclick="mover(1)">HOME</a></li>
                    <li><a href="#" onclick="mover(2)">PROFILE</a></li>
                    <li><a href="#" onclick="mover(3)">STUDIO</a></li>
                    <li class="loginbutton" onhover="mover(4)"><a href="#">LOG IN</a></li>
                </ul>
                <div id="blueindicator">
                </div>
            </div>
Ale kód mi nefunguje. Chtěl bych poradit, kde mám chybu.
mimochodec
Profil
Po var lastposition = 0; jsou akce, které jsou podmíněny jinými hodnotami té proměnné.
SirDoxik
Profil
\ mimochodecPoradil bys mi prosím, jak to vyřešit? s js teprve začínam.
_es
Profil
SirDoxik:
A čo s tým, že to „nefunguje“, keď si neprezradil, čo by to malo robiť, keby to fungovalo? Na čo tam máš var selection = select;, keď ti stačí použiť premennú (argument) select?
han5vk
Profil
Pravedpodobne si chcel na začiatku nastaviť var lastposition = 1? Pretože hodnotu 0 premennej lastposition nikde netestuješ, len hodnoty 1-4. A len tak mimochodom, celý ten ukecaný kód by sa dal napísať ako
function mover(select) {
    var lastposition = 0;
    alert(select+","+lastposition);
    lastposition=select;
}
lionel messi
Profil
SirDoxik:

1. Udalosť onhover JavaScript nepozná. Pokiaľ odchytávaš kliknutie, použi predsa onclick, pre nájdenie myšou je tu zase onmouseover.

2. Ani jedna z uvedených podmienok nemôže byť splnená, pretože premenná lastposition má hodnotu 0 (ako píše han5vk).
_es
Profil
[#5] han5vk:
Tá funkcia mi pripadá úplne nezmyselná.
mimochodec
Profil
SirDoxik:
Vypadá to, že chceš v tom lastposition uchovávat hodnotu z minulého použití té funkce. Použij k tomu http://www.w3schools.com/js/js_cookies.asp
_es
Profil
[#8] mimochodec:
A čo tak len globálnejšie definovanú premennú?
mimochodec
Profil
_es:
A čo tak len globálnejšie definovanú premennú?
Anebo.
juriad
Profil
SirDoxik:
Ukázka, jak to udělat pořádně: Živá ukázka. Všimni si, že proměnná last existuje v kontextu, který nikdy nebude zvenku dostupný.
_es
Profil
[#11] juriad:
To je také tipovanie, čo asi tak celá funkcia má robiť, čo asi tak SirDoxik potrebuje, atď... Tipovať účel premennej z jej názvu a pod... Čo ak je treba, aby bola naopak premenná dostupná aj pre iné funcie? SirDoxik by sa mal vyjadriť, aký má mať to celé v [#1] účel. Vyzerá to ako nejaký pochybný pokus o náhradu normálnych odkazov cez JS.
SirDoxik
Profil
Děkuju moc za rady.

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:

0