Effectivement je viens de tester et un compteur marche avec setTimeout et ça marche aussi avec setInterval ... Le problème vient donc d'ailleurs. Je vais essayer de faire des tests d'affichages dans un canvas pour voir si ça bloque ou non.
Edit : Et bien non, le dessin sur un canvas ne bloque pas quand on change d'onglet, j'ai utilisé ce code pour tester :
J'ai aussi essayé avec setTimeout ... Je ne vois pas d'où vient le problème. Pourtant chez moi aussi l'affichage ne se mettait pas à jour, ou plus précisement le compte des fps ne se faisaient plus dans la console.
Edit : Et bien non, le dessin sur un canvas ne bloque pas quand on change d'onglet, j'ai utilisé ce code pour tester :
<canvas id="canvas" width="200" height="200"></canvas>
<script type="text/javascript">
var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');
var i = 0;
function compte() {
ctx.fillStyle = "white";
ctx.fillRect(0, 0, 200, 200);
ctx.fillStyle = "black";
ctx.fillText(i++, 10, 60);
}
setInterval(compte, 1000);
</script>
J'ai aussi essayé avec setTimeout ... Je ne vois pas d'où vient le problème. Pourtant chez moi aussi l'affichage ne se mettait pas à jour, ou plus précisement le compte des fps ne se faisaient plus dans la console.