
Dulu, jQuery adalah penyelamat setiap proyek web. Tapi di tahun 2025, hampir semua yang dulu perlu jQuery kini sudah tersedia di browser secara native.
Artikel ini membahas cara mengganti interaksi sederhana jQuery dengan Native JS dan Alpine.js — framework ringan tanpa build step.
1. Masalah Lama: Ketergantungan pada jQuery
Hampir setiap proyek front-end klasik dimulai dengan baris $(document).ready()
.
Tapi dengan dukungan DOM API modern di semua browser, ketergantungan ini mulai terasa berat dan ketinggalan zaman.
// jQuery
$('#btn').click(function() {
$('#box').toggle();
});
2. Alternatif Modern: Native JS & Alpine.js
Sekarang kamu bisa menulis hal yang sama jauh lebih sederhana menggunakan Alpine.js
<!-- Alpine.js -->
<div x-data="{ open: false }">
<button @click="open = !open">Toggle</button>
<div x-show="open">Konten tampil</div>
</div>
Kenapa kode tersebut lebih sederhana dibandingkan JQuery? Alasannnya adalah kita langsung menulis logic javascript langsung ke dalam tag HTML. Bandingkan dengan JQuery, dimana kita menulis tag html dan kemudian script JQuery tersebut.
Contoh kode comparison lengkap: https://gist.github.com/mkhuda/5b0b1cd247f128e29c931e70c0059427
3. Tanpa Framework: Gunakan Native DOM API
Jika menginginkan tanpa framework apapun, maka VanillaJS adalah jawabannya. Dokumentasi lengkap ada di http://vanilla-js.com/. Contoh implementasi toggle button adalah sebagai berikut:
document.getElementById('btn').addEventListener('click', () => {
document.getElementById('box').classList.toggle('hidden');
});
Dengan classList.toggle()
, semua browser modern bisa menangani interaksi sederhana tanpa bantuan library.
4. Kapan Harus Berpindah dari jQuery
- Saat proyek kecil atau mungkin hanya berbentuk landing page statis.
- Saat kamu ingin loading cepat tanpa bundle besar.
- Saat menggunakan framework besar (React/Vue) terasa berlebihan.
Tip: Alpine.js bisa jadi jembatan sempurna sebelum beralih penuh ke framework SPA.
5. Kesimpulan
Migrasi kecil seperti ini meningkatkan performa dan keterbacaan kode tanpa kehilangan fungsionalitas.
Di era Core Web Vitals, menghapus jQuery bisa mempercepat waktu loading website hingga 20–30%. Hal ini akan cukup berpengaruh jika kamu membuat website yang sederhana dan butuh “boost” SEO secara cepat.
Leave a Reply