JavaScriptでSleep

こっちに書き直しました。 -> [id:lethevert:20051001:p1]
とりあえず、コードだけ。

function exec_clicked()
{
	execProc(0);
}

function execProc(idx)
{
	document.form1.result.value += "" + idx + "\n";
	sleep(f, g);

	function f()
	{
		return(document.form1.checker.checked);
	}
	function g()
	{
		document.form1.checker.checked = false;
		execProc(idx+1);
	}
}

function sleep(f, g)
{
	if(f()){
		if(! document.form1.end.checked){
			g();
		}
	}else{
		setTimeout(nextSleep, 100);
	}

	function nextSleep()
	{
		sleep(f, g);
	}
}