⊗jsSpAsnIL 153 of 294 menu

Asinkronitas Pemuatan Gambar di JavaScript

Gambar yang dibuat secara dinamis melalui JavaScript juga dimuat secara asinkron. Mari kita perhatikan kode berikut sebagai contoh:

let image = document.createElement('img'); image.src = 'img.png'; document.body.appendChild(image);

Seperti yang Anda lihat, di sini kita membuat tag img, menuliskan path ke gambar ke dalam src-nya dan menempatkan gambar ini di dalam body. Gambar, bagaimanapun, tidak akan langsung muncul di halaman. Masalahnya adalah ketika kita menuliskan path ke gambar ke dalam src - browser mulai mengunduh gambar tersebut dari situs. Hanya setelah gambar selesai diunduh, barulah browser dapat menampilkannya.

Jika gambar cukup besar, dan kecepatan internet cukup kecil, maka pengguna situs untuk beberapa waktu dapat "menikmati" gambar kosong - sampai gambar tersebut selesai dimuat.

Sebenarnya, tag img memiliki event load, yang terpicu saat pemuatan gambar selesai:

let image = document.createElement('img'); image.src = 'img.png'; image.addEventListener('load', function() { // akan terpicu saat gambar selesai dimuat });

Kita dapat menggunakan ini untuk menempatkan gambar di halaman, hanya ketika gambar tersebut telah selesai dimuat:

let image = document.createElement('img'); image.src = 'img.png'; image.addEventListener('load', function() { document.body.appendChild(image); // menempatkan setelah selesai dimuat });

Gambar tidak selalu berhasil dimuat: mungkin path ke gambar tidak benar, atau terjadi putus koneksi internet, kerusakan server situs, atau sesuatu yang serupa. Dengan kata lain - situasi pengecualian. Dalam hal ini, yang akan terpicu bukan event load, tetapi event error:

let image = document.createElement('img'); image.src = 'img.png'; image.addEventListener('load', function() { document.body.appendChild(image); }); image.addEventListener('error', function() { // kesalahan pemuatan gambar });

Buatlah sebuah tombol, yang ketika ditekan akan memuat sebuah gambar. Tampilkan gambar tersebut ketika sudah selesai dimuat. Tampilkan pesan jika terjadi masalah dengan pemuatan gambar.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak