Maison > Article > interface Web > La différence entre jquery this et $(this)
La différence entre jquery this et $(this) est la suivante : 1. this est un élément HTML, et $this est juste un nom de variable. Le $ est ajouté pour indiquer qu'il s'agit d'un objet jquery ; $(this) est une conversion qui peut être utilisée pour convertir l'objet dom représenté par ceci en un objet jquery.
L'environnement d'exploitation de ce tutoriel : système Windows 7, jquery version 1.10.0, ordinateur Dell G3.
Recommandé : "Tutoriel vidéo jquery"
La différence entre JQuery this et $(this) et la méthode d'obtention du sous-élément $(this) object
1. La différence entre JQuery this et $(this)
// this其实是一个Html 元素。 // $this 只是个变量名,加$是为说明其是个jquery对象。 // 而$(this)是个转换,将this表示的dom对象转为jquery对象,这样就可以使用jquery提供的方法操作。
Je crois que beaucoup de gens qui découvrent JQuery seront confus quant à la différence entre $(this) et ça, donc ça Quelle est la différence entre les deux ?
Tout d'abord, jetons un coup d'œil au symbole $() dans JQuery. En fait, ce symbole est équivalent à JQuery() dans JQuery, c'est-à-dire $(this)=jquery(); cela peut renvoyer un objet jquery. Ensuite, lorsque vous alert($('#id')); sur la page Web, un [object Object] apparaîtra. Cet objet objet est également un objet jquery.
Alors, revenons à $(this), qu'est-ce que c'est ? Supposons que nous ayons le code suivant :
$("#desktop a img").each(function(index){ alert($(this)); alert(this); }
Ensuite, on peut le voir à cet instant :
alert($(this)); 弹出的结果是[object Object ] alert(this); 弹出来的是[object HTMLImageElement]
Autrement dit, ce dernier renvoie un objet html (dans ce cas, il s'agit d'un img qui traverse un objet HTML, donc HTMLImageElement).
De nombreuses personnes utilisent souvent this.attr('src'); lors de l'utilisation de jquery, un message d'erreur "L'objet ne prend pas en charge cet attribut ou cette méthode" sera signalé. En fait, si vous comprenez l'exemple ci-dessus, vous saurez où se trouve l'erreur : c'est très simple. Cela fonctionne sur l'objet HTML. Alors, comment se fait-il qu'il y ait une méthode val() dans l'objet HTML, donc en cours d'utilisation ? , nous ne pouvons pas l'utiliser directement pour appeler des méthodes ou des propriétés jquery.
2. Méthode pour obtenir l'objet nœud enfant $(this) : find(element)
Comprenez la différence entre $(this) et this, jetons un œil à cet exemple : (Supposons , I La balise a dans la page contient img et contient l'attribut src). Lorsque je traverse, je veux obtenir l'adresse de src dans img sous $(this)
$("#desktop a ").each(function(index){ var imgurl=$(this).find('img').attr('src'); alert(imgurl); }
où .find(element) renvoie un élément DOM utilisé pour correspondre à l'élément, afin que l'adresse src souhaitée puisse être obtenue.
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!