Javascript setTimeout appel de fonction avec l'argument d'événement?

Quelle est la meilleure façon de s'en sortir dans le cas de l'objet lors de l'utilisation de setTimeout? J'utilise jQuery pour gérer les normaliser le modèle d'événements dans tous les navigateurs, mais je ne suis pas sûr de savoir comment obtenir le 'e' de l'objet dans le checkPos fonction.

Mon code actuel:

function MouseDownEvent(e) {
    *snip*
    timeoutID = setTimeout(checkPos(e), 500);
}
function checkPos(e) {
    //function uses e on a timeout of 500ms
    timeoutID = setTimeout( checkPos(e) }, 500);
}

Actuellement que le code fonctionne à la fois parce que la fonction est appelée dans l'événement mousedown, mais jamais les mises à jour de l'e de l'objet que l'utilisateur déplace la souris. Le FF javascript console d'erreur déclare également qu'il est " inutile appel de setTimeout (il manque des guillemets autour de l'argument?)', mais en suivant les conseils des causes il à complètement échouer.

Comment puis-je tirer dans le 'e' argument d'événement à partir d'un appel de setTimeout?

Edit: Ajouté dans le code que les rediffusions de la checkPos fonction toutes les 500ms

Avec votre code, vous êtes réellement appeler checkPos lors de l'appel de setTimeout (en raison de l'invocation de la fonction de l'opérateur ()) et le passage de sa valeur de retour de setTimeout; cette valeur n'est probablement pas une référence à une fonction, donc setTimeout échoue.

OriginalL'auteur C Bauer | 2010-11-30