2009-07-16 7 views
0

est-il possible d'ajouter à un type d'élément ou peut-être une sélection de CSS une propre fonction d'événement?jquery ajoute ses propres événements/fonctions aux éléments html de son choix?

quelque chose comme:

$("a").bind("blub", function() { alert("aaa" + this); }); 

$("a").get(0).blub(); 

je veux définir des fonctions qui ne sont disponibles que pour certains éléments spéciaux par exemple .:

la < div class = "myDivContainer" > ... </div > devrait avoir la fonction disponible:

$("myDivContainer").get(0).blub(); 

mais mayb e:

$("myDivSeparator").get(0).blub(); 

cela ne devrait pas fonctionner, car il n'a pas été défini pour elle

est-ce possible ?!

+0

Si vous sélectionnez un ID, vous devez mettre un # avant, donc ce serait #myDivContainer –

Répondre

5

Vous pouvez créer des événements personnalisés avec liaison et déclencheur. Voir par exemple ce question.

Vous devez utiliser la méthode de déclenchement pour appeler l'événement personnalisé:

$("a").bind("blub", function() {}); 
$("a").trigger("blub"); 

Bien sûr, vous pouvez déclencher l'événement « blub » uniquement pour les éléments qui se lient a été appelé avant.

Si vous souhaitez utiliser blub comme méthode, vous devez modifier/étendre le jQuery lui-même.

+0

ne comprends pas - comment j'appelle la méthode liée ?! –

+0

Le déclencheur ("blub") appelle la méthode liée. Google pour les événements personnalisés avec jQuery. Vous trouverez de nombreux articles utiles. – kgiannakakis

Questions connexes