ну вот я даже сделал как ты сказал. Ни один из 28 кликов не пропали
<!DOCTYPE HTML>
<html>
<body>
<div id="div" style="
width: 100px;
height: 100px;
background: red;
"></div>
<a href="#" id="go">go</a>
<a href="#" id="show-clicks">show clicks</a>
<script type="text/javascript">
var clicks = 0;
var n = 3;
var delay = 1000;
$('div').onclick = function(){
clicks++;
}
$('go').onclick = function(){
setTimeout( loop, delay );
};
function loop(){
if( n <= 0 ){
$('div').innerHTML += 'done';
return;
}
for( var i=0; i<1500000000; i++ ); // !!! количество итераций зависит от CPU
n--;
setTimeout( loop, delay );
}
$('show-clicks').onclick = function(){
alert( clicks );
}
function $(id){ return document.getElementById(id); }
</script>
</body>
</html>