ページのスクロール位置に応じて、8つの可能なフレームの1つを表示するアニメーションがあります。20ピクセルスクロールするたびに、フレーム8に到達するまで次のフレームが表示され、160ピクセル後にフレーム1に戻ります。現時点では、ページの長さが2000ピクセルの場合、ばかげているように見えるifステートメントが100個必要です。ループを使用した素晴らしい関数を使用して、それを数行にする方法が必要です。友人はそれが'mod'の仕事になるだろうと言ったが、どうやらjavascriptはmodや残りを行うことができない。
以下のスクリプトの抜粋を行いましたが、ここで全体のアイデアを見ることができます
http://jsfiddle.net/jimmytheman/NnFmn/2/
function scroll() {
if (window.pageYOffset < 20){
setTimeout("document.images['ball'].src=imageArray[0].src",0);
}
else if (window.pageYOffset < 40){
setTimeout("document.images['ball'].src=imageArray[1].src",0);
}
else if (window.pageYOffset < 60){
setTimeout("document.images['ball'].src=imageArray[2].src",0);
}
else if (window.pageYOffset < 80){
setTimeout("document.images['ball'].src=imageArray[3].src",0);
}