2009-08-10 11 views
1

J'utilise le plugin hoverIntent Jquery et j'ai une question concernant les fonctions de rappel.JQuery passant les paramètres aux pointeurs de fonction

Dans l'une de mes questions précédentes, il a été souligné que je devrais utiliser des pointeurs de fonction pour les rappels.

Ma question est la suivante: comment puis-je transmettre des paramètres aux pointeurs de fonction?

function initHoverHandler(type) { 
    var config = { 
     over: overHandler, // This is the issue, how do I pass var type to overHandler 
     out: hideHandler 
    }; 

$(this).hoverIntent(config); 
}; 
function overHandler(type) { 
    alert(type); // shows [object Object] 

}; 
+0

FYI, le var 'config' est pas dans la même portée que l'appel à' hoverIntent' dans votre exemple. – geowa4

+0

fixed --------- – Dirk

Répondre

2
over: function(){ 
     overHandler(type); 
     } 

Une autre façon est d'utiliser une fermeture

over: overHandler(type); 

function overHandler() { 

    return function(type) { 

     alert(type); 

    } 

}; 
+0

Est-ce que cela va à l'encontre du but de passer une référence en premier lieu? – Dirk

+0

yup, voir moyen de fermeture – redsquare

Questions connexes