Scrolling Background Blogger dengan Native JavaScript
Artikel ini merupakan pembaruan dari tutorial CodeFlare lama tentang background bergerak. Versi sebelumnya masih menggunakan jQuery dan perulangan setTimeout(). Pada versi terbaru ini engine ditulis ulang menggunakan native JavaScript dan requestAnimationFrame().
Dengan metode baru, script menjadi lebih ringan, lebih mudah dipahami dan tidak membutuhkan library tambahan. Arah gerakan tetap dapat dipilih ke atas, bawah, kiri atau kanan.
Efek seperti ini cocok digunakan pada hero section, kotak informasi, game-style interface, background dekoratif, widget maupun elemen tertentu pada halaman Blogger.
Scrolling Background bekerja dengan mengubah nilai
background-position secara bertahap pada sebuah elemen.
Versi terbaru pada artikel ini menggunakan native JavaScript. Jadi Anda tidak perlu memasang jQuery hanya untuk menjalankan animasi background.
Untuk hasil terbaik gunakan gambar tile atau pola yang dapat diulang secara horizontal maupun vertikal.
- Live Preview Scrolling Background
- Cara Memasang pada Blogger
- Pengaturan Script
- Generator Scrolling Background
- Contoh Gambar Tile Background
- Troubleshooting
Contoh berikut menggunakan gambar awan sebagai background yang bergerak secara vertikal. Pergerakan dilakukan langsung melalui native JavaScript.
Background pada preview bergerak dengan mengubah posisi gambar sedikit demi sedikit. Elemen HTML yang berada di atasnya tidak ikut berpindah karena yang dianimasikan hanya properti background.
Jika perangkat pengguna mengaktifkan prefers-reduced-motion, animasi otomatis dihentikan agar tetap ramah aksesibilitas.
Sebelum mengubah kode template Blogger, sebaiknya lakukan backup template terlebih dahulu.
Login ke dashboard Blogger kemudian pilih blog yang akan dipasang efek background.
Pilih menu Tema kemudian buka editor HTML template.
Cari kode </body> menggunakan fitur pencarian editor.
Tempel kode scrolling background tepat sebelum tag </body>.
Tentukan elemen yang akan diberi background, misalnya body, #hero atau .namaClass.
Simpan template kemudian periksa hasilnya pada desktop dan smartphone.
Gunakan kode final berikut:
Semua pengaturan utama ditempatkan pada satu object sehingga lebih mudah dimodifikasi.
target:"body"
direction:"up"
image:"URL-GAMBAR"
color:"#000"
speed:24
repeat:"repeat"
Untuk seluruh halaman:
Untuk elemen dengan ID:
Untuk elemen menggunakan class:
Nilai speed lebih besar membuat background bergerak lebih cepat.
Generator berikut dapat digunakan untuk membuat kode tanpa harus mengedit object JavaScript secara manual.
Gambar tile adalah gambar dengan pola yang dapat disusun berulang sehingga batas antar gambar terlihat menyatu.
Untuk scrolling background, gambar seperti ini biasanya lebih efisien dibandingkan menggunakan satu gambar landscape berukuran sangat besar.
Pastikan selector pada target benar dan elemen tersebut memang tersedia di halaman.
Periksa URL gambar dan pastikan menggunakan HTTPS serta dapat dibuka langsung melalui browser.
Kurangi nilai kecepatan dan gunakan gambar tile yang lebih kecil. Hindari gambar background berukuran sangat besar jika tidak diperlukan.
Target kemungkinan masih menggunakan body. Ganti dengan selector elemen tertentu seperti #hero atau .widgetBackground.
Periksa apakah perangkat menggunakan pengaturan reduced motion. Script sengaja menghormati preferensi tersebut.
Turunkan nilai speed. Misalnya dari 45 menjadi 20.
Versi baru Scrolling Background ini tidak lagi membutuhkan jQuery. Selain mengurangi dependency, source code juga lebih mudah dikembangkan untuk beberapa elemen sekaligus.
Untuk penggunaan modern, efek seperti ini sebaiknya diterapkan pada area tertentu daripada seluruh body jika background terlalu ramai. Dengan begitu konten tetap nyaman dibaca dan animasi hanya menjadi elemen dekoratif.
Jika ingin membuat efek yang lebih kompleks, engine ini dapat dikembangkan lagi menjadi background dengan beberapa layer, parallax, kontrol kecepatan berdasarkan scroll atau arah gerakan yang berubah secara otomatis.
CodeFlare menerima pembuatan widget, animasi, modifikasi template dan script Blogger sesuai konsep yang Anda butuhkan.
Hubungi CodeFlare
Terimakasih artikel sangat bermanfaat
ReplyDeleteMas, apakah ini ngak akan buat blog jadi berat.?
ReplyDeletengga asalkan menggunakan gambar tile dengan ukuran dibawah 100Kb
Deleteapa dia ngak pecah pixelnya bang, alias gambarnya ngak jelas kalau ukuran dibawah 100kb?
DeleteGambar background tidak pecah karena gambar akan ditampilkan apa adanya sesuai ukuran kemudian menggunakan CSS properti repeat (diulang) secara vertical dan horizontal jadi akan menampilkan gambar full menyeluruh menjadi background kemudian ditambah sedikit kode script untuk menjadi bergerak.
Deletekalo ngeliat background kaya gini, malah jadi keingat aplikasi friendster jaman dulu.. hehehee.. trims mas udah sharing tutorialnya, smoga next time bisa dicoba trik-nya
ReplyDeleteKalau saya untuk blog lebih suka background yang clean biar visitor fokusnya lebih ke artikel, tapi kalau untuk misal web ecommerce background semacam ini bisa berguna
ReplyDeletePenyajian artikel tentang membuat background bergerak ini cocok deh kayanya untuk webiste komersial, terutama niche games ato anime
ReplyDeleteUkuran minimal dan maksimal pixel gambar berapa utk tampilan spi ini?
ReplyDeleteukuran pixel minimal bisa 16px sedangkan ukuran maksimal pixel kalo saya sarankan sebesar 128 px karena menggunakan gambar tile jadi gambar akan di duplikasi secara vertikal dan horizontal
DeleteDulu awal-awal ngeblog diary pernah pakai background bergerak juga.
ReplyDeleteOtw buat nih gan
ReplyDelete