Вы можете сделать это, используя объект Image
, например, так (делайте это, когда вы хотите начать загрузку баннера, вероятно, в onload
):
var banner = new Image();
var loading = new Image();
var bannerElement = document.getElementById("banner"); // assumes an element with id "banner" contains the banner image - you can get the element however you want.
banner.src = "location/of/the/image.gif";
loading.src = "loading.gif";
banner.onload = function() {
bannerElement.removeChild(bannerElement.lastChild);
bannerElement.appendChild(banner);
};
bannerElement.removeChild(bannerElement.lastChild);
bannerElement.appendChild(loading);
Ваш элемент баннера должен выглядеть следующим образомэто:
<div id="banner"><img src="location/of/the/image.gif" alt="Banner" /></div>
Это так, что 1) часть bannerElement.removeChild будет работать и 2) придерживаться принципов прогрессивного улучшения, чтобы люди без JavaScript не остались в стороне.