Когда я нажимаю на определенную ссылку, я хочу, чтобы фоновое изображение fadeOut, изменилось на другое изображение, а затем fadeIn.jQuery fadeOut и fadeIn background-image
код у меня есть:
$('.link').on('click',function(){
var image = $(this).data('image');
$('#div-with-the-bgimage').css('background-image', 'url('+image+')');
})
Я попытался это:
$('.link').on('click',function(){
var image = $(this).data('image');
$('#div-with-the-bgimage').fadeOut('3000').fadeIn('3000').css('background-image', 'url(' + image + ')');
})
, но это не работает, что я делаю не так? (Я новичок в JQuery)
EDIT:
Я решил это с Рори McCrossan ответ:
$('.link').on('click',function(){
var image = $(this).data('image');
$('#div-with-the-bgimage').fadeOut('3000', function() {
$(this).css('background-image', 'url('+image+')').fadeIn('3000');
});
});
Но теперь это fadesOut на белом фоне и, а затем fadesIn к изображению , давая ощущение вспышки? Есть ли способ загрузить изображение раньше?
Сначала я предварительно загрузил изображение, я собираюсь предположить, что это не так. –
спасибо, что решает одну проблему, другая вещь заключается в том, что с этим решением изображение исчезает до белого, а затем от белого fadesIn к другому изображению. Как я могу увязать изображение с изображением без «мигания» белого –
@ RafaelMoraisdosSantos, как сказал Дэрил, вам нужно предварительно загрузить изображение. –