w00h00

Members
  • Content count

    1
  • Joined

  • Last visited

About w00h00

  • Rank
    Forum Newbie
  1. Hello I'm newbie in javascript and worked hard today on this and couldn't find the solution. Please help me. <script> if (/*@[email protected]*/false) { document.onfocusin = startB; document.onfocusout = stopB; } else { window.onfocus = startB; window.onblur = stopB; } var x = 1000; var y = 1; function startB() { if (x !== 'ok') { x = x - y; document.form.num.value = x; timeoutID=setTimeout("startB()", 1000); } if (x == 0) { x = 'ok'; document.form.num.value = x; } } function stopB() { clearTimeout(timeoutID); } </script> <body onLoad="startB()"> <form name="form"> <input name="num" size="10" readonly="readonly" type="text"> </form> When I open this page it counts down with value 1/sec normally and when I change window/tab it stops, I again come back it's continues 1/sec, this is what I want, but I have a big problem --> WHEN I GO TO THIS LINK AND CHANGE WINDOW/TAB VERY QUICKLY, THAT IS STILL UNLOADED, IT STARTS COUNTING DOWN IN ONBLUR STATUS, AND WHEN I COME BACK TO ONFOCUS STATUS, THE FUNCTION IS READ TWICE AND STARTS COUNTING DOWN 1/0.5sec... DOUBLE. Can anyone help me with this? Thanks in advance.