Обновление
Я установил rollOversHolder для обтекания при наведении копии, установил одинаковые размеры для одного набора для наведения содержимого. Установите все элементы в абсолютное положение, чтобы анимация могла появляться в 1 заданном месте. на анимации я устанавливаю z-index для отображения относительного содержимого.
Проверьте следующее: http://jsfiddle.net/aP2r3/8/
HTML
<div class="rollOversHolder">
<div id="main1" class="rollOver_1 rollover">test1</div>
<div id="main2" class="rollOver_2 rollover">test2</div>
<div id="main3" class="rollOver_3 rollover">test3</div>
<div id="main4" class="rollOver_4 rollover">test4</div>
</div>
<div class="rollOversHolder">
<div id="Copy1" class="copy1 copy">
01
</div>
<div id="Copy2" class="copy2 copy">
02
</div>
<div id="Copy3" class="copy3 copy">
03
</div>
<div id="Copy4" class="copy4 copy">
04
</div>
</div>
Jquery
$(function() {
var curI = 0;
jQuery(".rollover").hover(function() {
//index() gets index value started from 0 - Id values starts from 1, that's why the + 1.
curI = $(this).index() + 1;
//Set all hover copy to lower layer of display
$('.copy').css('z-index', '1');
//Set hovered copy to higher layer of display
$('#Copy' + curI).css('z-index', '100');
//Set dimension again, coz stop() animation may reset original dimensions
$('.copy').css('width', '103px');
$('.copy').css('height', '133px');
//Stop all animation and slideDown the hovered Item
$('#Copy' + curI).stop().slideDown(500);
}, function() {
//Set hovered copy to higher layer of display
$('.copy').css('z-index', '1');
//Stop all animation and slideUp to last item on mouse out
$('#Copy' + curI).stop().slideUp(500);
});
});
Пожалуйста, дайте мне знать, если это работает для вас.
ОБНОВЛЕНИЕ [событие щелчка]
Вы можете взглянуть на это: http://jsfiddle.net/aP2r3/9/
Для события click, см. Мой следующий код (Вы можете просто изменить имена классов, чтобы они были более релевантными)
JQuery:
$(function() {
var curI = 0;
jQuery(".rollover").click(function() {
//index() gets index value started from 0 - Id values starts from 1, that's why the + 1.
curI = $(this).index() + 1;
//Set all hover copy to lower layer of display
$('.copy').css('z-index', '1');
//Set hovered copy to higher layer of display
$('#Copy' + curI).css('z-index', '100');
//Set dimension again, coz stop() animation may reset original dimensions
$('.copy').css('width', '103px');
$('.copy').css('height', '133px');
//Hiding all except the relative content and showing the clicked content
$('.copy:not(#Copy' + curI + ')').stop(true, true).slideUp(500, function() {
$('#Copy' + curI).slideDown(500);
})
});
});