¿Cuál es la mejor/la mejor manera de evitar que se creen varias instancias de una función setTimeout (en javascript)?¿Cómo se manejan varias instancias de setTimeout()?
Un ejemplo (pseudo código):
function mouseClick()
{
moveDiv("div_0001", mouseX, mouseY);
}
function moveDiv(objID, destX, destY)
{
//some code that moves the div closer to destination
...
...
...
setTimeout("moveDiv(objID, destX, destY)", 1000);
...
...
...
}
Mi problema es que si el usuario hace clic en el ratón varias veces, tengo varias instancias de moveDiv() recibiendo llamadas.
La opción que he visto es crear un indicador, que solo permite llamar al tiempo de espera si no hay otra instancia disponible ... ¿es la mejor manera de hacerlo?
espero que deja claro ....
Uhm, en realidad, su código realmente no suprime múltiples "subprocesos" de tiempo de espera. (Tenga en cuenta que el tiempo de espera en la pregunta es recursivo). Se necesita más. ;) –
De todos modos, fue una lógica muy útil, gracias –