Руководство о том, как проверить, загружено ли фоновое изображение на страницу с помощью JavaScript.
Иногда мы хотим проверить, загружено ли фоновое изображение с помощью JavaScript.
В этой статье мы рассмотрим, как проверить, загружается ли фоновое изображение на страницу с помощью JavaScript.
Слушайте событие загрузки
Мы можем прослушать событие load
фонового изображения, чтобы узнать, загружено ли оно.
Если он загружен, мы можем установить фоновое изображение на изображение с тем же URL-адресом, что и фоновое изображение.
Например, мы можем написать:
const imageUrl = "https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png"; const bgElement = document.querySelector("body"); let preloaderImg = document.createElement("img"); preloaderImg.src = imageUrl; preloaderImg.addEventListener('load', (event) => { bgElement.style.backgroundImage = `url(${imageUrl})`; preloaderImg = null; });
У нас есть imageUrl
с изображением, которое мы хотим загрузить в качестве фонового изображения.
Затем мы получаем элемент body с document.querySelector
.
А затем мы создаем элемент preloaderImg
с document.createElement
с изображением, которое мы хотим предварительно загрузить.
Затем мы устанавливаем preloaderImg.src
на imageUrl
.
Затем мы вызываем addEventListener
для preloaderImg
с 'load'
в качестве первого аргумента для отслеживания загрузки preloaderImg
.
Обратный вызов запустится, когда он загрузится.
Итак, мы можем установить bgElement.style.backgroundImage
, чтобы установить фоновое изображение на изображение, загруженное в элемент preloaderImg
.
А затем мы устанавливаем preloaderImg
на null
, чтобы очистить предварительно загруженное изображение.
Теперь мы должны увидеть фоновое изображение, загруженное на нашу страницу.
Заключение
Мы можем прослушивать событие load
элемента изображения, чтобы узнать, загружено ли изображение.
Затем, когда оно загружено, мы можем использовать URL-адрес предварительно загруженного изображения, чтобы установить фоновое изображение страницы.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Посетите наш Community Discord и присоединитесь к нашему Коллективу талантов.