У меня есть веб-страница, на которой я хочу переключить фоновое изображение div в ответ на взаимодействие с пользователем. То, что у меня пока есть:
function updateImg() {
imgurl=buildImgURL(); // constructs a URL based on various form values
$('#mainImage').css("background-image", "url("+imgurl+")");
}
Это работает точно так, как я хочу, за исключением одной вещи. Из-за сочетания относительно больших фоновых изображений и относительно медленного сервера (ни один из которых не может быть легко исправлен) загрузка изображения занимает некоторое время. Поэтому, когда вызывается функция updateImg (), div становится белым за полсекунды или около того, прежде чем загружается новое фоновое изображение. Я хочу, чтобы старое фоновое изображение оставалось до завершения загрузки нового изображения, а затем мгновенно переключалось. Возможно ли это сделать?
Фоновое изображение генерируется сервером на лету, поэтому любое кэширование или предварительная загрузка на стороне клиента невозможны.