darsga qaytish

To'pning o'ngga sakrashini jonlantiring

To’pni o’ngga sakrashga harakat qiling. Shunga o’xshash:

Animatsiya kodini yozing. Chapdagi masofa 100px.

Manba sifatida oldingi Saqlayotgan to'pni jonlantiring topshirig’ining yechimini oling.

Saqlayotgan to'pni jonlantiring topshirig’ida bizda jonlantirish uchun faqat bitta xususiyat bor edi. Endi bizga yana bitta kerak: elem.style.left.

Gorizontal koordinata boshqa qonun bilan o’zgaradi: u sakrash emas, balki to’pni o’ngga siljitishni asta-sekin oshiradi.

Buning uchun yana bitta animate yozishimiz mumkin.

Vaqt funksiyasi sifatida biz linear dan foydalanishimiz mumkin, ammo makeEaseOut(quad) kabi narsa ancha yaxshi ko’rinadi.

Kod:

let height = field.clientHeight - ball.clientHeight;
let width = 100;

// tepaga jonlantirish (sakrab)
animate({
  duration: 2000,
  timing: makeEaseOut(bounce),
  draw: function (progress) {
    ball.style.top = height * progress + "px";
  },
});

// chapga jonlantirish (o'ngga harakatlanish)
animate({
  duration: 2000,
  timing: makeEaseOut(quad),
  draw: function (progress) {
    ball.style.left = width * progress + "px";
  },
});

Yechimni sandbox-da oching.