Maison > interface Web > js tutoriel > Exemple d'application $.proxy() de jQuery introduction_jquery

Exemple d'application $.proxy() de jQuery introduction_jquery

WBOY
Libérer: 2016-05-16 16:53:24
original
1071 Les gens l'ont consulté

Aujourd'hui, j'ai vu l'utilisation de proxy() lorsque je regardais <>. Cela me semblait très vague, alors j'ai cherché des informations partout

Exemple d'application $.proxy() de jQuery introduction_jquery

. Le code source de jQuery est également que je ne comprends pas

Mais je comprends enfin l'utilisation du proxy

Copiez le code Le code est le suivant :



Copier le code Le code est le suivant :

var obj = {
name : "Je suis le nom de obj",
sayName: function () {
alert(this.name);
}
}
$(" #guoBtn").click(obj.sayName); //Je suis le nom du bouton
// Et si je veux accéder au nom de l'obj ?
$("#guoBtn").click($. proxy(obj.sayName,obj));//"Je suis le nom de l'objet"
$("#guoBtn").click($.proxy(obj, "sayName")); "

De ci-dessus proxy(a,b ) on peut voir qu'il existe deux façons d'écrire ses paramètres.

La première façon : a est une fonction fonction, et b est le propriétaire de l'objet de cette fonction.

La deuxième façon : a est un objet, b est une chaîne et est le nom de l'attribut de a

Et cet exemple est un exemple sur < >.
Copier le code Le code est le suivant :

< ;div id="panel" style="display:none;">
Fermer


Copier le code Le code est le suivant :

$("#panel").fadeIn(function () {
$("#bouton du panneau").click(function () {
$( this).fadeOut();
});


Bien que le bouton disparaisse, le panneau ne disparaît pas. Vous pouvez utiliser un proxy pour résoudre ce problème

Copier le code Le code. est la suivante :
$("#panel").fadeIn(function ( ) {
var obj = this;
$("#panel button").click($ .proxy(function () {
$(this).fadeOut();
}, obj ));


Le panneau ne disparaîtra qu'après avoir cliqué le bouton.

Personnellement, je pense que le proxy est principalement utilisé pour modifier l'objet contextuel lorsque la fonction est exécutée

est encapsulé sur la base de apply, donc le proxy est celui de notre jQuery. appliquer.
É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
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal