私はさまざまなことを試しましたが、何もうまくいかないようです。ここにいる誰かが自由な時間を持って助けてくれることを願っています. 各フレームが 640 x 889 で、11 個の画像が垂直に積み重ねられたスプライト ストリップのアニメーション用の JavaScript を作成しようとしています。ウィンドウが開いたときにアニメーションを開始し、フレームを 3 回前後に実行してから停止する. 11 フレームあり、シーケンスは 1....11、次に 11...1 を 3 回実行し、3 つのループを完了するのに合計 3 秒かかります。助けてくれてありがとう。
HTML:
<!DOCTYPE html>
<html>
<head>
<script src="jquery-1.8.2.js"></script>
<meta name ="viewport" content = "width=640, user-scalable=yes">
<link rel="stylesheet" href="animate.css"/>
<title>Website</title>
</head>
<body>
<div id="bmw-glow">
<script type="text/javascript">
var fps = 11,
currentFrame = 0,
totalFrames = 11,
elem = document.getElementById("bmw-glow"),
currentTime = new Date().getTime();
(function animloop(time){
var delta = (time - currentTime) / 1000;
currentFrame += (delta * fps);
var frameNum = Math.floor(currentFrame);
if (frameNum >= totalFrames) {
currentFrame = frameNum = 0;
}
requestAnimationFrame(animloop);
elem.style.backgroundPosition = "0 -" + (frameNum * 889) + "px";
currentTime = time;
})(currentTime);
</script>
</div>
</body>
</html>
CSS:
#bmw-glow {
width: 640px;
height: 889px;
margin: 0px;
background: url("images/Social/Social_6_S.jpg");
}