这是一个开始的例子。
我用你原来的 JS 做了一个函数
function doAnimation(id) {
$(id).children('.slideleft').fadeIn(function () {
$(this).animate({
marginLeft: '103px'
}, 1000, function () {
// Animation complete.
});
});
$(id).children('.slideright').fadeIn(function () {
$(this).animate({
marginRight: '12px'
}, 1000, function () {
// Animation complete.
});
});
}
这是一个在按钮按下时调用的方法。它接受包含动画项目的包装器的 ID,并最终调用上述方法。
function animatePeople(id) {
// If there are visible people
if ($('.people:visible').length > 0) {
// Fade out the visible people and then process the following callback function
$('.people:visible').fadeOut(function () {
// Reset the margins
$('.people').css({
'margin-left': '',
'margin-right': ''
});
// Do the new animation
doAnimation(id);
});
} else {
// Do the new animation
doAnimation(id);
}
}
最后,这些是按钮的处理程序。
$('#nav-button-1').click(function () {
animatePeople('#people-holder-1');
});
$('#nav-button-2').click(function () {
animatePeople('#people-holder-2');
});
jsfiddle