2009-06-03 6 views
2

Je suis en train de faire ce qui suit:jQuery personnalisée cliquez

$("#something ."+id).click(function() { 
    callFunction(id,message); 
});  

$("#something ."+id).silentclick(function() { 
    callFunction(id,message,'silent'); 
}); 

Mais silentclick donne une erreur disant que la fonction n'existe pas. Comment puis-je créer mon propre événement personnalisé comme silentclick?

Nous vous remercions de votre temps.

+0

Que faites-vous exactement? La propriété "click" vous permet de placer un appel de fonction lorsque l'utilisateur clique sur un élément, n'est-ce pas suffisant? – Ivar

Répondre

3

Je pense que vous essayez de créer un événement personnalisé. Si c'est le cas, vous pouvez utiliser .bind() ou .live().

$("#something ."+id).bind('silentclick',function() {  
    callFunction(id,message,'silent'); 
}); 

Ensuite, vous pouvez déclencher l'événement à partir d'un autre endroit de votre code.

$("#something ."+id).trigger('silentclick'); 
+0

Merde, vous me battez de 30 secondes :( –

3

vous étendez jQuery comme ceci:

(function($){ 
    $.fn.silentclick = function(action) { 
     /* do what you like with the function passed */ 
     action(); /* for example invoke the function */ 
    } 
})(jQuery); 

Sans savoir ce que silentclick veut faire ou comment vous voulez déclenché, je ne peux pas vraiment donner plus de détails.

Questions connexes