Maison >interface Web >js tutoriel >jquery, exemple d'utilisation de chaque méthode, Sharing_jquery

jquery, exemple d'utilisation de chaque méthode, Sharing_jquery

WBOY
WBOYoriginal
2016-05-16 16:54:311102parcourir

Pour l'objet jQuery, la méthode each est simplement déléguée : l'objet jQuery est passé comme premier paramètre à la méthode each de jQuery En d'autres termes : la méthode each fournie par jQuery est pour l'objet fourni par le paramètre un. Tous les éléments enfants de la méthode sont appelés un par un. Chaque méthode fournie par l'objet jQuery appelle les sous-éléments de jQuery un par un.

Copier le code Le code est le suivant :

jQuery.prototype.each=function( fn , args ) {
return jQuery.each( this, fn, args );
Jetons un coup d'œil à l'implémentation spécifique de chaque méthode fournie par jQuery, jQuery.each(obj,fn,arg)
Cette méthode a trois paramètres : l'objet obj sur lequel opérer, la fonction fn sur laquelle opérer et les paramètres de fonction args.

Discutons en termes d'objets ojb :

1. L'objet obj est un tableau

La méthode

each appellera la fonction fn un par un sur les sous-éléments du tableau jusqu'à ce que le résultat renvoyé en appelant un certain sous-élément soit faux. En d'autres termes, nous pouvons le traiter avec la fonction fn fournie. faites-le remplir certaines conditions. Quittez simplement chaque appel de méthode. Lorsque la méthode each fournit le paramètre arg, le paramètre transmis par l'appel de fonction fn est arg, sinon : l'index du sous-élément, le sous-élément lui-même.

2. L'objet obj n'est pas un tableau

La plus grande différence entre cette méthode et 1 est que la méthode fn sera exécutée l'une après l'autre sans tenir compte de la valeur de retour. En d'autres termes, toutes les propriétés de l'objet obj seront appelées par la méthode fn, même si la fonction fn renvoie false. Les paramètres transmis lors de l'appel sont similaires à 1.

Copier le code

Le code est le suivant :jQuery.each=function( obj, fn , args ) { if ( args ) {
if ( obj.length == undefined ){
for ( var i in obj )
fn.apply( obj, args ); }else{
for ( var i = 0, ol = obj.length; i < ol; i ) {
if ( fn.apply( obj, args ) === false )
break;
}
}
} else {
if ( obj.length == undefined ) {
for ( var i in obj )
fn.call( obj, i, obj ) ;
} Else {
pour (var I = 0, OL = OBJ.Length, VAL = OBJ [0]; I & LT; OL && FN.CALL (VAL, I, Val)! == False ; Val = Obj [ i] ){}
}
}
return obj
}



Il est important de noter que la méthode d'appel spécifique de fn dans chaque méthode n'est pas simple fn(i, val) ou fn(args), mais fn.call(val,i,val) ou fn La forme de. apply(obj.args) signifie que dans votre propre implémentation de fn, vous pouvez directement utiliser ce pointeur pour faire référence aux sous-éléments du tableau ou de l'objet. Cette méthode est une méthode d'implémentation utilisée par la plupart des jQuery.
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