Maison > interface Web > Tutoriel H5 > Quelle est la différence entre jquery sur bind

Quelle est la différence entre jquery sur bind

一个新手
Libérer: 2017-10-07 11:39:52
original
2038 Les gens l'ont consulté

À partir de la version 1.7+, JQuery fournit on() et off() pour lier et annuler les fonctions de traitement d'événements. Ces deux API présentent de nombreuses similitudes avec les fonctions bind() et unbind() initialement fournies par JQuery, mais présentent également quelques différences. Pour une introduction détaillée à la liaison et à la dissociation, veuillez vous référer à cet article.

Les signatures de fonction de on() et bind() sont les suivantes :


  1. bind(type, [data], fn)  
      
    on(type,[selector],[data],fn)
    Copier après la connexion

Vous pouvez voir que la différence entre les deux fonctions est : si la valeur du paramètre du sélecteur est prise en charge. En raison de la fonctionnalité de diffusion d'événements de JavaScript, si nous enregistrons un gestionnaire d'événements sur l'élément parent, lorsque l'événement se produit sur l'élément enfant, le gestionnaire d'événements sur l'élément parent sera également déclenché. Si lors de l'utilisation de on, ne définit pas le sélecteur, alors il n'y a aucune différence entre on et bind.

  1. <p id="parent">  
        <input type="button" value="a" id="a"/>  
        <input type="button" value="b" id="b"/>  
    </p>
    Copier après la connexion


Le code ci-dessus, si nous utilisons bind() pour lier le traitement des événements de clic sur la fonction parent, lorsque le bouton a ou b est cliqué, la fonction de traitement des événements sera exécutée. Si nous voulons déclencher lorsque l'on clique sur a mais pas lorsque l'on clique sur b, alors nous pouvons utiliser on, le code est le suivant


  1. $("#parent").on("click","#a",function(){  
        alert($(this).attr("id"));  
    });
    Copier après la connexion

Comme vous pouvez le voir : le sélecteur de paramètre de la fonction on() est de permettre à l'élément parent de filtrer les événements qui se produisent sur les éléments enfants lorsque des événements bouillonnent. Si bind est utilisé, alors une telle capacité n'existe pas et les événements qui se produisent sur l'élément enfant déclencheront certainement l'événement de l'élément parent.

Il y a un autre point à noter : la fonction de traitement d'événements liée à on peut également être utilisée pour les nouveaux éléments ajoutés dans le futur, et a le même effet que délégué, mais bind ne le fait pas .

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal