Вот что я пытаюсь достичь: на странице загрузите кучу изображений из БД и прикрепите их к галерее div при нажатии на изображение галереи: выцветать текущее большое главное изображение - > заменить источник утрачены изображений на источник щелкнули уменьшенное изображение -> анимировать Div контейнер основного изображения на новую высоту изображения -> выгорает основное изображение обратно вАнимация div на динамическом изображении нажмите
у меня есть этот код:.
$.getJSON('inc/API.php',
{
command: "get_ads_to_display"
},
function(result){
$("#img_main").attr('src', 'images/'+result[0].ad_image_filename);
for(var i = 0; i<result.length; i++)
{
$("<div class='div_item_container'>"+
"<div class='div_ad_name'>"+result[i].ad_publisher+"</div>"+
"<div class='div_ad_image'><img src='images/"+result[i].ad_image_filename+"' /></div>"+
"</div>").appendTo("#gallery");
}
// Channge main image src to src of a clicked image
//animate the main image div's height
$('.div_item_container').on('click', '.div_ad_image img', function() {
var src = $(this).attr('src');
$("#img_main").fadeTo(200,0,function(){
$("#img_main").attr('src', src);
var img = document.getElementById('img_main');
var img_height = img.clientHeight;
//alert(img_height);
$("#div_main_image_container").animate({height:img_height+10+'px'},250,function(){
$("#img_main").fadeTo(200,1);
});
});
});
});
Это работает, за исключением первого щелчка - при первом нажатии на любое из изображений галереи у меня нет анимации div, она просто изменяет размер div, заменяет t он изображает src и исчезает снова. После этого у меня хорошая анимация высоты div. Почему это происходит, и есть ли способ исправить это?
Галерея div статична, а 'div class = 'div_item_container' добавляется динамически, да. Я попытался делегировать его в '# gallery', но он по-прежнему не анимации при первом щелчке. – Igal