Wat is het verschil tussen '$(this)' en 'this'?
Ik ben momenteel bezig met deze tutorial: Aan de slag met jQuery
Voor de twee voorbeelden hieronder:
$("#orderedlist").find("li").each(function (i) {
$(this).append(" BAM! " + i);
});
$("#reset").click(function () {
$("form").each(function () {
this.reset();
});
});
Merk op dat we in het eerste voorbeeld $(this)
gebruiken om wat tekst toe te voegen aan elk li
element. In het tweede voorbeeld gebruiken we this
direct bij het resetten van het formulier.
$(this)
lijkt veel vaker gebruikt te worden dan this
.
Ik denk dat in het eerste voorbeeld $()
elk li
element omzet in een jQuery object dat de append()
functie begrijpt, terwijl in het tweede voorbeeld reset()
direct op het formulier kan worden aangeroepen.
In principe hebben we $()
nodig voor speciale jQuery-only functies.
Is dit correct?
560
3
Ja, je hebt
$()
alleen nodig als je jQuery gebruikt. Als je jQuery's hulp wilt om DOM dingen te doen moet je dit in gedachten houden.In principe elke keer dat je een set elementen terug krijgt maakt jQuery er een jQuery object van. Als je weet dat je maar één resultaat hebt, zal het in het eerste element zitten.
En zo verder...
Ja, je hebt
$(this)
nodig voor jQuery functies, maar wanneer je basis javascript methoden van het element wilt benaderen die geen gebruik maken van jQuery, kun je gewoonthis
gebruiken.Ja, door
$(this)
te gebruiken, heb je jQuery functionaliteit voor het object ingeschakeld. Door alleenthis
te gebruiken, heeft het alleen generieke Javascript functionaliteit.