setInterval("doSomething()", 2000);
function doSomething(){alert('hi')}
私はreading about thisしてきたと私はちょうど例を動作させることはできません:(
setInterval("doSomething()", 2000);
function doSomething(){alert('hi')}
私はreading about thisしてきたと私はちょうど例を動作させることはできません:(
にそれを変更する必要があります。それはあなたのコードをonloadハンドラにラップして、doSomething
をグローバル名前空間の外に保ちます。したがって、setTimeoutがあなたのコードを実行しようとすると、doSomething
が見つかりませんでした。 「何のラップ」を実行しないようにjsfiddle変更し、すべてが順調です:http://jsfiddle.net/gilly3/PRff7/3/
あなたは、文字列でdoSomething
にお電話をラップしていない場合はsetInterval
が同じであるdoSomething
への直接参照を取得しますので、それも動作します範囲。グローバル参照は必要ありません。
あなたはあなたのコードが原因jsfiddleで実行されていない
setInterval(doSomething, 2000);
function doSomething(){alert('hi')}
あなたのコードをインラインで残したい、といくつかの名前の関数にそれを委任しない場合(コードが複数のコマンドで構成されている場合は特に)、これを使用する:
setInterval(function(){ alert('hi'); alert('hello') }, 2000);
+1理由を説明する*なぜそれがうまくいかなかったのですか? – user113716
+1は問題が何であるかを調べるために – SLaks
すばらしい答え。私はインターネット上のサンプルをインターネットで見続けていました。なぜそう多くのサンプルが間違っているのか不思議に思っていました。単にプレjQueryだからです。 – Mohammad