Я делал простую программу, которая имитирует кого-то, бросающего объект.Кажется, все работает, но ... я хочу выполнить один цикл в течение ~ 100 мс.
button.addEventListener("click", function(){
for(let i = bob_x; i < 1504; i++){
setTimeout(function(){
pos_x = i;
//console.log("vx: " + vx);
//console.log("vy: " + vy);
//console.log("i: " + i);
//console.log("G: " + G);
pos_y = vy/vx*i - G*i*i/2/vx/vx;
obj.style.setProperty("left", pos_x);
obj.style.setProperty("top", parseInt(pos_y, 10));
}, 100)
}
})
Он не ждет и выполняет все примерно за четверть секунды.Я не знаю почему.
vx и vy - это координаты вектора, полученные путем вычитания координат из EventListener "mouseup" из координат из события "mousedown".Bob_x - это x-координата блока, представляющего парня.