3 763 Скрипты / Zoom

Эффект увеличения изображений

HTML

Каждый элемент состоит из двух DIV - в одном помещено изображение, а в другом подпись.

<div class="item"> <img src="1.jpg" height="240" width="300" />
    <div class="caption"> <a href="http://www.ea.com/crysis-2">Crysis 2</a>
        <p>Зря он это сделал.</p>
    </div>
</div>
<div class="item"> <img src="2.jpg" height="240" width="300" />
    <div class="caption"> <a href="http://www.ea.com/crysis-2">Crysis 2</a>
        <p>В костюме, как в танке.</p>
    </div>
</div>
<div class="item"> <img src="3.jpg" height="240" width="300" />
    <div class="caption"> <a href="http://www.ea.com/crysis-2">Crysis 2</a>
        <p>Нано костюм главного героя.</p>
    </div>
</div>

CSS

JS

Можно заметить, что мы настраиваем две переменные zoom и move, при этом объявляем посредством var, только одну переменную, другую можно не объявлять. И анимируем эффект наведения курсора. Увеличение изображения и появление подписи.

$(document).ready(function() {
    var move = -15
         zoom = 1.1;
    $('.item').hover(function() {
        
        width = $('.item').width() * zoom;
        height = $('.item').height() * zoom;
    
        $(this).find('img').stop(false,true).animate({'width':width, 'height':height, 'top':move, 'left':move}, {duration:300});
        $(this).find('div.caption').stop(false,true).fadeIn(300);
    },
    function() {
        $(this).find('img').stop(false,true).animate({'width':$('.item').width(), 'height':$('.item').height(), 'top':'0', 'left':'0'}, {duration:300});    
        $(this).find('div.caption').stop(false,true).fadeOut(400);
    });
});
Скачать 715Загрузок 208,01 Kb
Демо

Комментарии

  • Facebook
  • Вконтакте

Похожие статьи