Days
Hours
Minutes
Seconds

Promo Grand Opening

15% OFF

Khusus Pelanggan Baru

Tutorial jQuery #6: Chaining Function pada jQuery

 

 

Pada tutorial sebelumnya, kita sudah belajar tentang Callback Function untuk menjalankan kode secara berurutan setelah suatu aksi selesai. Kali ini, kita akan mempelajari teknik yang tidak kalah penting dan sering digunakan dalam jQuery untuk menulis kode yang lebih ringkas dan mudah dibaca: Chaining Function.


 

Apa itu Chaining Function?

 

Chaining Function (atau metode chaining) adalah kemampuan jQuery untuk memanggil beberapa metode (fungsi) secara berurutan pada objek yang sama dalam satu baris kode tunggal. Ini dimungkinkan karena sebagian besar metode jQuery mengembalikan objek jQuery itu sendiri, sehingga kamu bisa langsung memanggil metode lain setelahnya.

Bayangkan kamu ingin menyembunyikan sebuah elemen, lalu memudarkannya, dan kemudian menampilkan pesan. Tanpa chaining, kamu mungkin akan menulisnya seperti ini:

JavaScript

$("#elementSaya").slideUp("slow");
$("#elementSaya").fadeOut("fast");
$("#elementSaya").text("Elemen sudah pergi!");

Dengan chaining, kamu bisa melakukannya jauh lebih rapi:

JavaScript

$("#elementSaya").slideUp("slow").fadeOut("fast").text("Elemen sudah pergi!");

Terlihat lebih bersih dan efisien, bukan?


 

Bagaimana Chaining Bekerja?

 

Konsep dasarnya adalah setiap metode jQuery yang berpartisipasi dalam chain mengembalikan objek jQuery yang sama setelah operasi yang diminta selesai. Ini memungkinkan metode berikutnya untuk beroperasi pada elemen yang sama.

Analogi: Bayangkan kamu sedang memancing di pantai Malang. Kamu melempar kail (selector), menangkap ikan (elemen), lalu kamu bisa langsung membersihkan ikan itu, memotongnya, dan menggorengnya dalam satu “rantai” aksi pada ikan yang sama, tanpa harus mengambil ikan itu lagi dan lagi. 🎣


 

Contoh Praktik 1: Chaining Efek Animasi

 

Mari kita buat sebuah div yang akan disembunyikan, lalu dipudarkan, dan kemudian digeser ke bawah.

HTML

<!DOCTYPE html>
<html>
<head>
    <title>Chaining Function</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
    <style>
        #kotakAksi {
            width: 150px;
            height: 150px;
            background-color: #FFC107; /* Kuning */
            border: 2px solid #FFA000;
            margin: 20px;
            text-align: center;
            line-height: 150px;
            font-family: sans-serif;
            font-weight: bold;
            color: #333;
        }
    </style>
</head>
<body>

    <button id="mulaiChaining">Mulai Chaining</button>
    <div id="kotakAksi">Ini Kotak</div>
    <p id="pesanStatus"></p>

    <script>
        $(document).ready(function(){
            $("#mulaiChaining").click(function(){
                $("#kotakAksi")
                    .slideUp(1000) // Geser ke atas (sembunyi) dalam 1 detik
                    .fadeOut(500) // Lalu memudar (sembunyi lebih lanjut) dalam 0.5 detik
                    .slideDown(1000, function(){ // Lalu geser ke bawah (tampil) dalam 1 detik
                        // Ini adalah callback untuk efek terakhir
                        $("#pesanStatus").text("Semua efek chaining selesai!");
                    });
            });
        });
    </script>
</body>
</html>

Penjelasan:

  • Kita memilih #kotakAksi.
  • .slideUp(1000) akan menyembunyikannya.
  • Setelah itu, tanpa harus menulis $("#kotakAksi") lagi, kita langsung memanggil .fadeOut(500).
  • Kemudian, kita memanggil .slideDown(1000).
  • Callback function pada slideDown() akan dijalankan setelah semua efek dalam chain ini selesai (yaitu, setelah slideUp, fadeOut, dan slideDown semuanya berakhir). Ini penting: callback hanya berlaku untuk metode di mana ia didefinisikan.

 

Contoh Praktik 2: Chaining dengan Manipulasi CSS/HTML

 

Chaining juga sangat efektif untuk menggabungkan efek dengan manipulasi CSS atau HTML.

HTML

<!DOCTYPE html>
<html>
<head>
    <title>Chaining CSS & HTML</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
    <style>
        #myBox {
            width: 100px;
            height: 100px;
            background-color: #673AB7; /* Ungu */
            margin: 20px;
            color: white;
            text-align: center;
            line-height: 100px;
        }
    </style>
</head>
<body>

    <button id="ubahBtn">Ubah Kotak</button>
    <div id="myBox">Original</div>

    <script>
        $(document).ready(function(){
            $("#ubahBtn").click(function(){
                $("#myBox")
                    .css("background-color", "red") // Ubah warna latar
                    .slideUp(500) // Geser ke atas
                    .slideDown(500) // Geser ke bawah
                    .html("Teks Baru!") // Ganti konten HTML
                    .delay(1000) // Jeda 1 detik (hanya untuk efek)
                    .animate({width: "200px", height: "50px"}, "slow"); // Animasi properti CSS
            });
        });
    </script>
</body>
</html>

Penjelasan Tambahan:

  • .css("background-color", "red"): Mengubah properti CSS.
  • .html("Teks Baru!"): Mengubah konten HTML di dalam div.
  • .delay(1000): Ini adalah metode khusus chaining yang hanya berlaku untuk antrean animasi. Ia akan menunda eksekusi animasi berikutnya dalam chain selama 1000 milidetik (1 detik). Metode lain seperti css() atau html() tidak akan tertunda oleh delay().
  • .animate(): Metode ini memungkinkan animasi properti CSS kustom, yang akan kita bahas lebih detail di tutorial mendatang.

 

Manfaat Chaining Function

 

  • Kode Lebih Ringkas: Mengurangi jumlah baris kode yang perlu ditulis.
  • Mudah Dibaca: Alur aksi pada elemen menjadi lebih jelas dan terstruktur.
  • Efisiensi: jQuery tidak perlu mencari elemen yang sama berulang kali di DOM.

Namun, penting untuk diingat bahwa chaining yang terlalu panjang bisa jadi sulit dibaca juga. Gunakan secara bijak untuk menjaga keterbacaan kode.

Dengan menguasai chaining, kamu akan menulis kode jQuery yang lebih elegan dan efisien. Ini adalah salah satu fitur paling disukai dari jQuery. Pada tutorial berikutnya, kita akan membahas cara memanipulasi HTML/DOM secara lebih mendalam. Sampai jumpa di tutorial selanjutnya!


Berikut adalah gambar sampul yang saya buat untuk artikel tutorial tentang chaining function jQuery.

Wawasan Terbaru

Gemini_Generated_Image_wfw5uwwfw5uwwfw5
Mengenal Dunia Grafis: Dari Piksel Hingga Vektor, Kekuatan Visual di Era Digital
Gemini_Generated_Image_b6dimfb6dimfb6di
Mengenal Foundation: Kerangka Kerja Front-End Profesional untuk Web Responsif
Gemini_Generated_Image_sx3ztpsx3ztpsx3z
CSS
Mempercantik Website dengan CSS: Seniman di Balik Tampilan Web 🎨
Gemini_Generated_Image_e013qke013qke013
Mengenal HTML: Fondasi dari Setiap Halaman Website 🌐
Gemini_Generated_Image_ldki4nldki4nldki
Menyelami Dunia Coding: Seni Berbicara dengan Komputer
Gemini_Generated_Image_dpvliydpvliydpvl
Menguasai GIT: Fondasi Penting dalam Dunia Pengembangan Perangkat Lunak
Gemini_Generated_Image_sqcib9sqcib9sqci
Tutorial Python #12: Mengenal Jenis-jenis Operator dalam Python
Gemini_Generated_Image_o1bw3do1bw3do1bw
Memahami Tipe Data Dictionary dalam Python
Gemini_Generated_Image_ko4ixfko4ixfko4i
Mengenal Tipe Data Set dalam Python
Gemini_Generated_Image_1xop7m1xop7m1xop
Tuple dalam Python: Pengenalan dan Tutorial

Wawasan Serupa

Gemini_Generated_Image_nvbx4anvbx4anvbx
Gemini_Generated_Image_astlj2astlj2astl
Gemini_Generated_Image_esblmjesblmjesbl
Gemini_Generated_Image_jix690jix690jix6

Ceritakan Detail Proyekmu

Mulai dari 30K aja, solusi IT kamu langsung jalan tanpa drama.

Kata Mereka Tentang Solusi Coding

Dipercaya oleh lebih dari 200++ client untuk menyelesaikan proyeknya dengan total 250++ proyek dari berbagai jenis proyek