私は小さな作業片を持っています。
HTML:
<div id="it">X</div>
CSS:
#it {
background: blue;
width: 40px;
text-align: center;
color: white;
padding: 10px 0;
border: solid 1px black;
border-radius: 25px;
position: absolute;
left: 100px;
top: 100px;
}
JS:
$('#it').animate({
left: '+=100',
top: '+=100'
}, 400, function() {
$(this).animate({
top: '-=100'
}, 400, function() {
$(this).animate({
left: '-=100',
top: '+=100'
}, 400, function() {
$(this).animate({
top: '-=100'
}, 400);
});
});
});
前述のすべてがこのjsfiddleにまとめられています
助けが必要なこと:
- JS をループします。その上、ネストされたコードの繰り返しを単純化するために何かできることはほぼ確実です。
- 動きを滑らかにします。つまり、4 本の直線ではなく、「傾いた 8」の形をなぞる 1 つの曲線でオブジェクトを飛行させます。
- 可能であれば、JS を取り除き、CSS3 に置き換えます。
また、私のプロジェクトでは必ずしも必要ではありませんが、途中でオブジェクトを回転させて、常に向かっている方向を向く方法があれば素晴らしいでしょう。まるでレースカーを上から見ているようです。