У меня была медленная загрузка изображения CAPTCHA (1st_image) на мою страницу, и я хотел показать другое изображение (2nd_image) только ПОСЛЕ загрузки изображения CAPTCHA (1st_image). Поэтому мне пришлось ждать, пока сначала загрузится изображение CAPTCHA (1st_image).
Вот решение, которое прекрасно работает, чтобы сначала дождаться загрузки изображения, а затем загрузить другое изображение (не забудьте отобразить изображение «Пожалуйста, подождите!», Пока они ждут загрузки другого изображения):
<script>
function checkImageLoad() {
if (document.getElementById("1st_image").complete == true) {
console.log("1st_image Loaded!");
}
document.getElementById("2nd_image").src = "http://example.org/2nd_image.png";
}
</script>
<body onload="checkImageLoad();">
<img id="1st_image" src="http://example.org/1st_image.png">
<img id="2nd_image" src="http://example.org/loading_please_wait.gif">
Либо скорость интернета низкая, либо высокая, и браузер будет ждать загрузки всей страницы со всеми изображениями (даже если они связаны между собой), а затем выполнит функцию, поэтому второе изображение будет отображаться только после первое изображение загружается нормально.
Расширенное примечание: Вы можете использовать URL-адрес веб-страницы в «src» изображения, чтобы сначала загрузить веб-страницу, а затем показать изображение. Цель состоит в том, чтобы загрузить файл cookie с внешней веб-страницы, который может повлиять на второе отображаемое изображение (например, CAPTCHA) .