Autor | Zpráva | ||
---|---|---|---|
RastyAmateur Profil |
Krásné odpoledne,
potřeboval bych pomoci. V živé ukázce jsem se pokusil na řádku 16 vytvořit interval. Ten se provede, ale jen jednou. neví někdo proč? Děkuji moc :-) 2 edity smazány, nepodstatné Tak jsem pokročil... Rád bych věděl, proč varianta 1 nefunguje, a 2 ano (rozdíly zvýrazním) varianta 1: $("#play").click(function(){ vlastikk("1"); intervall = setInterval(vlastikk("1"), 3000); }); $("#play").click(function(){ vlastikk("1"); intervall = setInterval(function(){vlastikk("1")}, 3000); }); |
||
Dan Charousek Profil |
#2 · Zasláno: 26. 1. 2016, 17:07:54
RastyAmateur:
setInterval přijímá za první parametr název funkce nebo callback, který se v určitém intervalu provádí. V druhé variantě máš správně callback, ale v první variantě tu funkci přímo voláš a jako parametr se funkci setInterval předá návratová hodnota tvé funkce vlastikk() .
Abys zprovoznil první variantu, tak by to mělo vypadat takto: setInterval("vlastik(1)", 3000) , ale osobně se mi tento zápis nelíbí a za sebe doporučím druhou variantu (kromě těch uvozovek kolem intu).
|
||
RastyAmateur Profil |
Dan Charousek:
Děkuji mnohokrát :-) Myslím, že tomu rozumím. Ty uvozovky kolem čísla jsou proto, že v té funkci se pomocí trojitého rovnítka srovnává vstup a řetězec... |
||
_es Profil |
#4 · Zasláno: 26. 1. 2016, 19:26:31
RastyAmateur:
Viď aj Časté potíže, zajímavosti a poučné debaty » Rozdíl mezi voláním funkce a funkcí. |
||
RastyAmateur Profil |
#5 · Zasláno: 26. 1. 2016, 19:29:46
_es:
Děkuji za odkaz :) |
||
Časová prodleva: 8 let
|
0