Красиво называется да? Вот не могу разобраться.
Простейший вид через переменную в общей памяти .
Поробывал вот так например :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
var TimeOut = 3;
function testTimeout()
{
setInterval(function () {
TimeOut--;
alert('1 секундa' + TimeOut);
}, 1000);
while (TimeOut > 0) {
}
}
</script>
</head>
<body>
<p style="text-align: center" onclick='testTimeout()'><button>SetInterval falls into enless loop</button> </p>
</body>
</html>
Но не получается цикл
while (TimeOut > 0) { }
почему-то бесконечный, хотя по моей логике , раз в секунду TimeOut должен уменьшаться на единицу непонимаю как работает этот планировщик отложенных вызовов, почему код уменьшающий TimeOut не выполняется. Может надо как-то протолкнуть эту очередь отложенных вызовов , может она передает управление другой процедуре когда есть свободное время . Типа Application->ProcessMessages/ Нашёл какойто метод document.dispatchEvent() может это оно