JQuery .append(), .prepend(), .before() dan .after()

Tabel Konten
  1. .append() dan .prepend() 
  2. .before() dan .after() 
    1. HTML 
    2. jQuery 
jQuery .append(), .prepend(), .before() dan .after()

.append(), .prepend(), .before() dan .after(), semua itu adalah fungsi untuk memanipulasi elemen HTML, lebih tepatnya untuk menyisipkan elemen HTML pada target yang telah ditentukan. Hanya saja terdapat beberapa perbedaan pada masing-masing fungsi mengenai di sebelah mana elemen akan ditempelkan saat fungsi-fungsi ini bekerja.

.append() dan .prepend() 

Kita mulai dengan .append(). .append() akan menyisipkan elemen ke dalam elemen target dari sebelah bawah. Katakanlah kita memiliki elemen paragraf di dalam elemen divisi seperti ini:

<div>
    <p>Lorem ipsum...</p>
</div>

lalu kita sisipkan sebuah elemen <span> menggunakan jQuery .append() seperti ini:

$('div').append('<span></span>');

maka elemen sisipan tersebut akan muncul di sebelah bawah, di dalam elemen target:

<div>
    <p>Lorem ipsum...</p><span></span></div>

sebaliknya, jika kita menggunakan .prepend(), maka kita akan mendapati elemen akan ditambahkan di sebelah atas:

<div><span></span>    <p>Lorem ipsum...</p>
</div>

Cara kerjanya sebenarnya mirip dengan manipulasi CSS :before dan :after. Hanya saja, dengan JavaScript kita bisa menyisipkan elemen HTML apapun, bukan hanya teks, gambar dan nilai atribut.

.before() dan .after() 

Kedua fungsi ini akan menyisipkan elemen bukan dari sebelah dalam, melainkan dari luar elemen target. .before() akan menyisipkan elemen sebelum target, sedangkan .after() akan menyisipkan elemen setelah target:

HTML 

<span id='abjad'>B</span>

jQuery 

$('span#abjad').before('<span>A</span>');
$('span#abjad').after('<span>C</span>');

Maka hasilnya akan menjadi seperti ini:

<span>A</span><span id='abjad'>B</span><span>C</span>

Coba Sendiri

15 Komentar

  • Unknown

    Uhuiiii Mantappppp oia aku kemaren - kemaren baru bisa nulis script sendiri, lagi iseng gak ada kerjaan ehh nulis script nya bener wahh Hore banget nih \o/ di tambah lagi belajar disini mudah2an makin banyak yang saya bisa kerjakan nanti :-bd

  • Unknown

    Bang aku mau tanya :
    jadi gini misalX kita buat kalimat di dalam suatu class atau ID nah setiap kata di dalam Class atau ID tersebut HTML nya ada di dalam jquery jadi kata2 itu di Apit Oleh HTML yang ada di dalam jquery, gimana tuh ngebuatnya N pake' selektor apa..?

  • ricco

    berarti dengan fungsi ini kita bisa menyisipkan apa saja yah dengan memanggil variable yang telah di tentukan..
    keren-keren..
    mantap kawand..

  • Taufik Nurrohman

    @system of blog Mungkin maksudnya pakai .html()
    Sisipkan elemen span ke dalam elemen #container secara otomatis:

    $('#container').html('<span>Teks di dalam kode HTML begini maksudnya?</span>');
  • Unknown

    @Taufik Nurrohman Bukan gitu bang, tapi span itu otomatis ada di dalam teks yang ada di dalam ID tersebut misalX kita nulis, ini ibu budi, nah kata - kata tersebut sudah di apit oleh html span yang ada di Jquery gitu maksud saya

  • Taufik Nurrohman

    @system of blog Hmmmhh... =p*

  • Unknown

    @Taufik Nurrohman Jadi gimana tu bang. . . ? kok Hmmm :Ozz

  • Taufik Nurrohman

    @system of blog Cuma merasa kurang begitu paham saja sama pertanyaanmu. Kode yang Saya tuliskan di atas memang nantinya akan menghasilkan sesuatu seperti ini:

    <div id='container'><span>Teks di dalam kode HTML begini maksudnya?</span></div>
  • Anonim

    Jadi gini bang misalnya kita tulis di Jquery begini
    .html('<span>,</span>').
    maka otomatis kata kata yang ada di
    <div id='container'>disini kata katanya terkena SPAN</div>
    Jadi Kita Gak perlu Nulis kata - katanya di Jquery gitu Lo Bang Maksud saya.

  • Taufik Nurrohman

    @sin1aja Oh, itu memakai .wrapInner() :)

    $('#container').wrapInner('<span></span>');

    Demo: http://jsfiddle.net/tovic/2CueT/1/

  • Unknown

    @Taufik Nurrohman oh iya bang, kalau span nya ada di setiap 1 huruf rumit gak tuh pembuatannya, jadi setiap 1 huruf di apit oleh span

  • Taufik Nurrohman

    @system of blog Wow, luar biasa mas! Mau mencoba bikin LetteringJS sendiri ya? Saya malah belum pernah kepikiran. Ini Saya temukan dari Stackoverflow. Cuma selektornya memang masih memakai selektor CSS3 :nth-child(n). Sepertinya ini akan Saya dokumentasikan di snippet:

    $('.splitWord').children().andSelf().contents().each(function() {
    if (this.nodeType == 3) {
    $(this).replaceWith(
    $(this).text().replace(/(\w)/g, "<span>$&</span>")
    );
    }
    });

    Demo: http://jsfiddle.net/tovic/2CueT/2/
    Konsep: http://stackoverflow.com/questions/5754450/wrap-each-char-in-except-tags-with-jquery

  • Unknown

    @Taufik Nurrohman Ah gak juga orang aku gak terlalu ngerti script gimana mau bikin lettering js sendiri wkwkkk Mantep deh Langsung ke JSfiddle nih praktek2 bentar :)

  • Unknown

    :-bd

Komentar telah ditutup.