Jeg er ganske dyktig med koding, men nå og da kommer jeg over kode som ser ut til å gjøre i utgangspunktet det samme. Hovedspørsmålet mitt her er, hvorfor vil du bruke .append()
i stedet for .after()
eller omvendt?
Jeg har lett og kan ikke synes å finne en klar definisjon av forskjellene mellom de to og når du skal bruke dem og når du ikke skal.
Hva er fordelene med den ene fremfor den andre, og også hvorfor skulle jeg bruke den ene i stedet for den andre?? Kan noen forklare dette for meg?
var txt = $('#' + id + ' span:first').html();
$('#' + id + ' a.append').live('click', function (e) {
e.preventDefault();
$('#' + id + ' .innerDiv').append(txt);
});
$('#' + id + ' a.prepend').live('click', function (e) {
e.preventDefault();
$('#' + id + ' .innerDiv').prepend(txt);
});
$('#' + id + ' a.after').live('click', function (e) {
e.preventDefault();
$('#' + id + ' .innerDiv').after(txt);
});
$('#' + id + ' a.before').live('click', function (e) {
e.preventDefault();
$('#' + id + ' .innerDiv').before(txt);
});
.append()
plasserer data inne i et element ved sidste indeks
og
.prepend()
plasserer det foregående elementet ved første indeks
.
<div class='a'> //<---you want div c to append in this
<div class='b'>b</div>
</div>
.append()
kjøres vil det se slik ut:$('.a').append($('.c'));
etter kjøring:
<div class='a'> //<---you want div c to append in this
<div class='b'>b</div>
<div class='c'>c</div>
</div>
.prepend()
kjøres vil det se slik ut:$('.a').prepend($('.c'));
etter kjøring:
<div class='a'> //<---you want div c to append in this
<div class='c'>c</div>
<div class='b'>b</div>
</div>
.after()
plasserer elementet etter elementet.
.before()
setter elementet før elementet.
$('.a').after($('.c'));
etter utførelse:
<div class='a'>
<div class='b'>b</div>
</div>
<div class='c'>c</div> //<----this will be placed here
$('.a').before($('.c'));
etter utførelse:
<div class='c'>c</div> //<----this will be placed here
<div class='a'>
<div class='b'>b</div>
</div>
append()
og prepend()
er for å sette inn innhold inne i et element (gjøre innholdet til dets barn), mens after()
og before()
setter inn innhold utenfor et element (gjøre innholdet til dets søsken).
Den beste måten er å gå til dokumentasjon.
.append()
versus .after()
append()
: Sett inn innhold, spesifisert av parameteren, til slutten av hvert element i settet med samsvarende elementer..prepend()
vs .before()
prepend()
: Setter inn innhold, spesifisert av parameteren, til begynnelsen av hvert element i settet med samsvarende elementer.before()
: Sett inn innhold, spesifisert av parameteren, før hvert element i settet med samsvarende elementer.Så append og prepend refererer til objektets barn, mens after og before refererer til objektets søsken.