jQuery animate меняет отображение с блока на встроенное на img - PullRequest
0 голосов
/ 04 октября 2011

У меня есть метод небольшого наведения, который увеличивает высоту изображения.Проблема в том, что animate автоматически меняет изображение с display: block на display: inline.Как я могу сказать jQuery не менять это при анимации?

phoneCarousel.find("li td.img img").each(function(){
    $(this).data('height', this.height);
});

// Add mouse methods to each phone
phoneCarousel.find("li").bind('mouseenter mouseleave', function(e) {
    var img = $(this).find("td.img img");
    phoneCarousel.find("li").removeClass("active");
    $(this).addClass("active");
    if(img.data('height')>0){
        img.stop().animate({
            height: img.data('height') * (e.type === 'mouseenter' ? 1.2 : 1)
        });
    }
});

1 Ответ

1 голос
/ 04 октября 2011

попробуйте так: -

$(function() {
    $('ul.hover_block li').hover(function(){
        $(this).find('img').animate({top:'182px'},{queue:false,duration:500});
    }, function(){
        $(this).find('img').animate({top:'0px'},{queue:false,duration:500});
    });
});

Пример HTML-кода:

<ul class="hover_block">
    <li><a href="/"><img src="your_image.gif" alt="alt" /> Text</a></li>
    <li><a href="/"><img src="your_image.gif" alt="alt" /> Text.</a></li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...