2011-09-12 8 views
0

.clickハンドラの前に呼び出される再帰関数があります(ラジオボタンがチェックされているかどうかを確認します)。 .clickが実行されないようにしています。私がそれらを切り替えると、私の再帰関数は実行されません。私のチェックボックスがチェックされ、私の再帰関数を実行するかどうかを確認することができるようにJqueryスクリプトの実行を非同期にする方法はありますか?Jqueryの非同期化

一般的に、これを行う標準的な方法はありますか?今すぐドキュメントのヘッダーにすべてのコードを実行していますが、それらを分割してhtml-scriptタグでスクリプトを個別に読み込むことはできますか?

+2

具体的なコードを見ると、説明した方法を視覚化するのが難しい問題の一般的なヒントを提供するのではなく、実行しようとしていることをより良い方法で提案することができます。 – GregL

+1

再帰関数の実行に時間がかかる場合は、遅延がわずか数ミリ秒であっても、自分自身を呼び出すたびに 'setTimeout()'を使うことを強くお勧めします。それ以外の場合は、ブラウザを完全にロックする可能性があります。 –

+0

ちょっと、申し訳ありませんが、私のコードは本当に混乱しているので、私はコードの例を追加しませんでした。タイムアウトのものはうまくいった。 – yoshi

答えて

1

setTimeout()を使用すると、関数を非同期に実行できます。例えば、上記

function delay() { 
    alert('world'); 
} 

setTimeout(delay, 100); 

alert('hello'); 

スニペットは、ユーザーは「hello」を警告する、と100msの後、それがユーザー「世界」を警告します。

関連する問題