次のような画像の無限のスライドショーを作成しようとしています:
- ウィンドウ全体で画像をスライドさせます
- 最後の画像に到達すると、画像の最初から開始します
これが私の現在のコードです:
var direction = '-';
function doScroll()
{
$('#products ul').animate({left: direction + '500'}, 5000, function()
{
if (direction == '-')
{
$('#products li:first').before($('#products li:last'));
}
else
{
$('#products li:last').after($('#products li:first'));
}
});
}
$(document).ready(function()
{
$('#products ul').css({'width': $('#products ul li').length * 185});
plzscroll = setInterval("doScroll()", 1000);
});
setInterval() の理由は、無限のアニメーションを作成することです。
Firebug によると、UL は左に 500 ピクセルスクロールされてから停止します...ただし、LI は正常に移動します。最初の画像はスライドショーの最後に配置され、続きます。
私が必要とするのは、アニメーションが UL をスライドし続けない理由を理解することだけです。