Maison  >  Article  >  interface Web  >  Comment récupérer une liste de gestionnaires d'événements liés à un élément dans jQuery ?

Comment récupérer une liste de gestionnaires d'événements liés à un élément dans jQuery ?

DDD
DDDoriginal
2024-11-07 22:59:03755parcourir

How to Retrieve a List of Event Handlers Bound to an Element in jQuery?

Obtention d'une liste de gestionnaires d'événements liés à un élément dans jQuery

Considérez un élément HTML avec l'ID "elm" auquel deux événements des gestionnaires sont attachés : un pour l’événement click et un autre pour l’événement mouseover. Il peut être souhaitable d'obtenir une liste de tous les gestionnaires d'événements associés à cet élément.

Pour y parvenir dans les versions modernes de jQuery, la méthode $._data peut être exploitée. Cette méthode permet d'accéder aux données internes associées à un objet jQuery, y compris tous les événements liés par jQuery. Cependant, il est important de noter que $._data est destiné à un usage interne uniquement.

Le code suivant montre comment utiliser $._data pour lister les événements liés à l'élément avec l'ID "elm":

// Bind event handlers to element
$('#elm').click(_f);
$('#elm').mouseover(_m);

// Retrieve events bound to element
$._data($('#elm')[0], "events");

Le résultat de $._data sera un objet contenant tous les événements liés. Pour chaque événement, les propriétés de l'objet correspondent au type d'événement, tandis que les valeurs correspondent à un tableau de gestionnaires d'événements.

Pour analyser plus en détail les gestionnaires d'événements, il est possible de cliquer avec le bouton droit sur la fonction de gestionnaire dans Chrome et de sélectionner "afficher la définition de la fonction." Cette action révèle l'emplacement précis où le gestionnaire est défini dans le code de l'utilisateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn