Daugiau
Koks skirtumas tarp '$(this)' ir 'this'?
Šiuo metu dirbu su šia pamoka: Pradedame dirbti su jQuery
Toliau pateikti du pavyzdžiai:
$("#orderedlist").find("li").each(function (i) {
$(this).append(" BAM! " + i);
});
$("#reset").click(function () {
$("form").each(function () {
this.reset();
});
});
Pastebėkite, kad pirmajame pavyzdyje mes naudojame $(this)
, norėdami pridėti tekstą prie kiekvieno li
elemento. Antrajame pavyzdyje iš naujo nustatydami formą tiesiogiai naudojame this
.
Atrodo, kad $(this)
naudojamas daug dažniau nei this
.
Spėju, kad pirmajame pavyzdyje $()
kiekvieną li
elementą paverčia jQuery objektu, kuris supranta append()
funkciją, o antrajame pavyzdyje reset()
gali būti tiesiogiai iškviesta formoje.
Iš esmės $()
mums reikia specialioms tik jQuery funkcijoms.
Ar tai teisinga?
560
3
Taip,
$()
reikia tik tada, kai naudojate jQuery. Jei norite, kad "jQuery" padėtų atlikti DOM veiksmus, turėkite tai omenyje.Iš esmės kiekvieną kartą, kai gaunate elementų rinkinį atgal, jQuery paverčia jį jQuery objektu. Jei žinote, kad turite tik vieną rezultatą, jis'bus pirmajame elemente.
Ir taip toliau...
Taip,
$(this)
reikalingas jQuery funkcijoms, bet kai norite pasiekti pagrindinius elemento javascript metodus, kurie nenaudoja jQuery, galite tiesiog naudotithis
.Taip, naudodami
$(this)
įjungėte jQuery funkciją objektui. Naudojant tikthis
, jis turi tik bendrąsias Javascript funkcijas.