Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Memastikan Imej Latar Belakang Dimuatkan Sebelum Menggayakan Badan?

Bagaimana untuk Memastikan Imej Latar Belakang Dimuatkan Sebelum Menggayakan Badan?

Mary-Kate Olsen
Lepaskan: 2024-11-17 20:55:02
asal
693 orang telah melayarinya

How to Ensure a Background Image is Loaded Before Styling the Body?

Cara Semak sama ada Imej Latar Belakang Dimuatkan

Untuk memastikan imej latar belakang dimuatkan sepenuhnya sebelum menjalankan sebarang kod, seperti sebagai mengubah penggayaan tag badan, pendekatan alternatif diperlukan. Berikut ialah penyelesaian terperinci:

  1. Mencipta Objek Imej:
const image = new Image();
Salin selepas log masuk
  1. Menetapkan Sumber Imej:
image.src = 'http://picture.de/image.png';
Salin selepas log masuk
  1. Menggunakan Acara Muatan:
image.addEventListener('load', function() {
  // Code to be executed after the image is loaded
});
Salin selepas log masuk
  1. Memohon Imej Latar Belakang:

Selepas imej dimuatkan, anda boleh meneruskan untuk menerapkannya sebagai imej latar belakang:

const body = document.querySelector('body');
body.style.backgroundImage = `url('${image.src}')`;
Salin selepas log masuk
  1. Menggunakan Penyelesaian Berasaskan Janji:

Untuk pendekatan yang lebih berstruktur, fungsi berasaskan janji boleh digunakan:

function loadImage(src) {
  return new Promise((resolve, reject) => {
    const image = new Image();
    image.addEventListener('load', () => resolve(image));
    image.addEventListener('error', () => reject(`Failed to load image: ${src}`));
    image.src = src;
  });
}

loadImage('http://picture.de/image.png').then(image => {
  body.style.backgroundImage = `url('${image.src}')`;
});
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Imej Latar Belakang Dimuatkan Sebelum Menggayakan Badan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan