Last Updated on September 18, 2023 by
JavaScript adalah bahasa pemrograman yang kuat dan serbaguna sehingga sering digunakan untuk meningkatkan pengalaman pengguna di situs web. Salah satu cara populer untuk meningkatkan pengalaman pengguna adalah dengan menambahkan animasi ke halaman web kalian. Dalam tutorial ini kami akan menjelaskan dasar-dasar animasi JavaScript (javascript animations) dan bagaimana kalian dapat memanfaatkannya untuk membuat situs web yang lebih menarik dan interaktif. Yuk simak!
Image by Freepik
Table of Contents
Apa Itu JavaScript Animations?
JavaScript Animations adalah teknik yang digunakan untuk mengubah properti-properti elemen HTML secara berurutan dalam interval waktu tertentu sehingga menciptakan efek visual pergerakan atau perubahan dalam halaman web kalian.
JavaScript ini dapat digunakan untuk membuat elemen-elemen seperti gambar, teks atau bahkan seluruh latar belakang bergerak atau berubah secara dinamis.
Memahami Dasar JavaScript Animations
JavaScript Animations adalah cara yang kuat untuk meningkatkan pengalaman pengguna di situs web kalian. Melibatkan perubahan properti-properti elemen HTML dalam interval waktu tertentu untuk menciptakan efek visual pergerakan atau perubahan dalam halaman web kalian. Untuk memahami dasar-dasar animasi JavaScript, ada empat konsep penting yang harus kalian pahami:
- Elemen Utama
Pertama kalian perlu memilih elemen HTML yang akan dianimasikan. Bisa memakai gambar, teks, latar belakang atau elemen lain dalam halaman web kalian. Identifikasi elemen ini dengan menggunakan metode seperti document.getElementById() atau document.querySelector().
- Interval Waktu (Frame Rate / FPS)
Interval waktu adalah jantung dari setiap animasi. Ini adalah kecepatan dengan which perubahan terjadi dalam animasi kalian dan diukur dalam frame per detik (FPS). Semakin tinggi FPS, semakin halus animasi akan terlihat tetapi juga memerlukan lebih banyak daya komputasi. Standar umum untuk animasi web yang mulus adalah 60 FPS. Kalian dapat mengatur interval waktu menggunakan setInterval() atau requestAnimationFrame().
- Properti Animasi
Properti animasi adalah properti dari elemen HTML yang akan diubah selama animasi. Kalian harus menentukan dengan jelas properti mana yang akan diubah.
Contoh properti yang umum digunakan dalam animasi yaitu:
- left (perpindahan horizontal)
- top (perpindahan vertikal)
- opacity (kejernihan elemen)
- width (lebar elemen)
- height (tinggi elemen)
- transform (transformasi seperti rotasi atau scaling)
Pilihan properti akan bergantung pada jenis efek yang ingin kalian capai dalam animasi kalian.
- Fungsi Animasi
Kalian perlu membuat fungsi JavaScript yang akan dijalankan berulang kali selama animasi. Fungsi ini disebut juga dengan looping function. Fungsi ini akan mengubah properti elemen kalian dalam interval waktu yang telah ditentukan dan menciptakan efek perubahan yang terlihat dalam animasi.
Di dalam fungsi ini kalian akan mengatur perubahan properti elemen sesuai dengan kebutuhan animasi kalian.
Image by Freepik
Cara Menambahkan Animasi ke Halaman Web
Berikut adalah cara menambahkan Animasi ke dalam halaman web.
- Interval Waktu
Kalian dapat mengatur interval waktu menggunakan fungsi setInterval() atau requestAnimationFrame().
var interval = setInterval(frame, 16); // 60 FPS (1000 ms / 60 = 16.67 ms)
- Fungsi Animasi
Fungsi animasi adalah tempat di mana kalian akan mengatur perubahan properti elemen HTML. Fungsi ini akan dipanggil pada setiap iterasi interval waktu dan perubahan yang kalian lakukan dalam fungsi ini akan menciptakan efek animasi yang terlihat.
Berikut adalah contoh sederhana animasi yang mengubah posisi elemen HTML dari kiri ke kanan.
function animateElement() { var elem = document.getElementById("animatedElement"); var pos = 0; function frame() { if (pos == 300) { clearInterval(interval); } else { pos++; elem.style.left = pos + "px"; } } var interval = setInterval(frame, 16); // 60 FPS }
Dalam contoh di atas animateElement adalah fungsi animasi. Fungsi frame adalah bagian dari animasi yang mengubah properti elemen HTML dalam hal ini, menggeser elemen ke kanan. Fungsi frame akan dipanggil setiap 16 milidetik oleh setInterval sampai elemen mencapai posisi yang diinginkan.
- Penghentian Animasi
Kalian juga perlu memperhatikan bagaimana dan kapan animasi harus dihentikan. Penghentian animasi dapat terjadi ketika elemen mencapai posisi tertentu atau ketika kondisi tertentu terpenuhi. Dalam contoh di atas animasi dihentikan ketika elemen mencapai posisi x = 300.
if (pos == 300) { clearInterval(interval); }
- Pengoptimalan dan Interpolasi
Untuk membuat animasi yang lebih kompleks kalian mungkin perlu mempertimbangkan interpolasi (perubahan berangsur-angsur) dan mengoptimalkan kode kalian. Interpolasi dapat digunakan untuk menciptakan efek animasi yang lebih alami seperti pergerakan yang melambat atau berakselerasi.
Pengoptimalan kode animasi juga penting untuk memastikan animasi berjalan dengan lancar dan tidak membebani kinerja perangkat pengguna. Hindari perubahan properti yang berlebihan atau tidak perlu selama animasi.
Dengan pemahaman tentang fungsi animasi kalian dapat mulai membuat animasi yang menarik dan dinamis dalam proyek JavaScript kalian. Animasi web dapat memperkaya pengalaman pengguna, membuat situs web kalian lebih interaktif dan memberikan kesan profesional.
Teruslah berlatih dan eksperimen dengan berbagai jenis animasi untuk mengembangkan keterampilan kalian dalam animasi JavaScript.
- Contoh Lain
Selain mengubah dari kiri ke kanan, berikut adalah contoh mengubah latar belakang HTML dalam animasi dengan lembut. Animasi ini akan berubah dari warna merah ke warna biru dengan perubahan berangsur-angsur selama beberapa detik.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Contoh Animasi JavaScript</title> <style> #animatedElement { width: 100px; height: 100px; background-color: red; transition: background-color 2s ease-in-out; } </style> </head> <body> <div id="animatedElement"></div> <script> var elem = document.getElementById("animatedElement"); var isRed = true; function changeColor() { if (isRed) { elem.style.backgroundColor = "blue"; } else { elem.style.backgroundColor = "red"; } isRed = !isRed; } setInterval(changeColor, 2000); // Ubah warna setiap 2 detik (2000 ms) </script> </body> </html>
Penjelasan singkat
Kode HTML ini memiliki sebuah elemen <div> dengan ID “animatedElement” yang akan kita animasikan. Kita menggunakan CSS untuk mengatur warna latar belakang elemen tersebut dengan transition yang membuat perubahan warna menjadi lebih lembut dalam waktu 2 detik (2s).
Dalam kode JavaScript, kita mendapatkan elemen dengan ID “animatedElement” menggunakan document.getElementById. Fungsi changeColor akan dipanggil setiap 2 detik melalui setInterval. Fungsi ini mengubah warna latar belakang elemen dari merah ke biru dan sebaliknya dengan efek perubahan yang lembut. Variabel isRed digunakan untuk melacak warna latar belakang saat ini.
Kesimpulan
Dalam artikel ini kita telah mempelajari dasar-dasar animasi JavaScript dan bagaimana dapat memanfaatkannya untuk membuat situs web yang lebih menarik dan interaktif. Berikut adalah beberapa poin penting yang telah dibahas.
JavaScript Animations adalah teknik yang digunakan untuk mengubah properti-properti elemen HTML secara berurutan dalam interval waktu tertentu, menciptakan efek visual pergerakan atau perubahan dalam halaman web kalian.
Ada empat konsep penting yang perlu dipahami dalam dasar-dasar animasi JavaScript yaitu pemilihan elemen yang akan dianimasikan, interval waktu (frame rate), properti animasi dan fungsi animasi.
Untuk menambahkan animasi ke halaman web kalian, kalian perlu mengatur interval waktu menggunakan setInterval() atau requestAnimationFrame(), membuat fungsi animasi yang mengubah properti elemen HTML, memutuskan kapan animasi harus dihentikan dan mempertimbangkan pengoptimalan dan interpolasi.
Terdapat juga contoh kode untuk animasi sederhana yang mengubah posisi elemen HTML dan mengubah warna latar belakang dengan lembut.
Dengan pemahaman tentang fungsi animasi JavaScript kalian dapat mulai membuat animasi yang menarik, dinamis dan interaktif dalam proyek JavaScript kalian. Animasi web dapat meningkatkan pengalaman pengguna, membuat situs web kalian lebih menarik dan memberikan kesan profesional. Teruslah berlatih dan eksperimen dengan berbagai jenis animasi untuk mengembangkan keterampilan kalian dalam animasi JavaScript.
Temukan lebih banyak artikel seri belajar Javascript maupun bahasa pemrograman lainnya hanya di CODEKEY. Klik https://codekey.id/ sekarang juga untuk langsung belajar gratis. Sampai bertemu lagi!
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.