嘿我试图制作一种滑块,但是让循环“重置”时出现问题。这个想法是让元素动画化以淡化不透明度,并在完成时将它们隐藏起来,以便在重置循环后不会触发“.is(:visible)”。然而,回调函数正在影响将其不透明度设置为“1”且在错误时间的元素。我猜这很简单,我不知道动画,因为我有点像jQuery newb。
$('a#galleryArrow').bind('click', function(){
wrapper.children().slice(imageSet,(imageSet + 5)).animate({opacity: 0}, function() {$(this).hide();});
if (wrapper.children(':last-child').is(':visible')) { imageSet = 0; }
else { imageSet = imageSet + 5; }
wrapper.children().slice(imageSet, (imageSet + 5)).css({display: 'block'}).animate({opacity: 1});
wrapper.animate({left: -(imageSet * 104)});
return false;
});
答案 0 :(得分:0)
首先尝试将第二个动画移动到第一个动画回调内部,这样它们就不会发生冲突。
$('a#galleryArrow').bind('click', function(){
wrapper.children()
.slice(imageSet,(imageSet + 5))
.animate({opacity: 0}, function() {
$(this).hide();
if (wrapper.children(':last-child').is(':visible')) {
imageSet = 0;
}
else {
imageSet = imageSet + 5;
}
wrapper.children()
.slice(imageSet, (imageSet + 5))
.css({display: 'block'})
.animate({opacity: 1});
wrapper.animate({left: -(imageSet * 104)});
});
return false;
});