Autor Zpráva
huh
Profil *
ahoj..
    function funkcia(){
        alert ("OK");
    }
    $(".a").hover(function(){
        var time=setTimeout ("funkcia()", 2000);
    });
    $(".a").mouseout(function(){
         clearTimeout(time);
    });
Chcel by som že: ak som s myškou na dive s triedou a 2 sekundy tak aby sa vykonala funkcia funkcia (teda alert-lo ok), ale aby pokiaľ som na tom dive len napr. 1 sekundu aby sa ten odpočet zastavil a funkcia sa nevykonala, čo mám zle vtom kóde?


už som to vyriešil namiesto hover som nahral mouseover a zrazu to funguje..ale vôbec neviem prečo
pcmanik
Profil
huh:
Pozri si dokumentaciu k hover a pochopis
Radek9
Profil
huh:
Proměnné v JS jsou existenčně omezené tělem funkce. Ty ji definuješ v těle jedné funkce a snažíš se k ní přistupovat z druhé. Musíš ji dát o úroveň výš.
peta
Profil
Jen rozepisi, co psal Radek.
function()
{
var time = setTimeout ("funkcia()", 2000);
} // tady se vnitrni promenne teto funkce mazou

function()
{
clearTimeout(time); // Uplne jina funkce, time tady neexistuje. Time neexistuje ani globalne, takze alert(time) napise logicky undefined. Definuj time jako globalni promennou mimo funkce.
} // tady se vnitrni promenne teto funkce mazou
Radek9
Profil
peta:
takze alert(time) napise logicky undefined
Ne, vyhodí výjimku.

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: