조금 작은 div
이 사인파를 따라 움직일 수 있기를 희망하는 작은 JavaScript 애니메이션을하고 있으며, 잠시 동안 수평 경로가 잘 작동합니다 (직선 만). Y
축의 수학 공식이 잘못되었다고 확신합니다. 나는 발견 한 몇 가지 예를 가지고 그것을 바로 잡으려고 노력했지만, 그들 중 누구도 나를 위해 일하지 않았다. 내가 시도한 모든 가능성에서, Y
축은 무시되고 작은 상자는 단지 직선으로 수평으로 움직인다.이 자바 스크립트 애니메이션이 사인파 움직임을 만들어서는 안됩니까?
어떻게 해결할 수 있습니까? 운동이 사인파를 따라 이동합니까? jQuery를 사용하거나 HTML 5를 사용하는 것이 더 쉽다는 것을 알고 있지만 원래 코드에서 무엇이 잘못되었는지 궁금해졌습니다. 가능하면이 문제를 해결하는 것이 좋습니다. 여기
function animate() {
xnow = item.style.left;
item.style.left = parseInt(xnow)+1+'px';
ynow = item.style.top;
item.style.top = ynow + (Math.sin((2*Math.PI*xnow)/document.width))*document.heigth;
setTimeout(animate,20);
}
전체 코드 : JSFiddle
이렇게해도 문제는 해결되지 않지만'height'의 철자가'heigth '로 잘못 표시됩니다. 또한 item.style.top의 결과를 기록하면 값은 항상 400px입니다. – Chase
운영자 ... 감사합니다 .-- 철자가 잘못되었습니다. 어쨌든, 그게 내가 이해하지 못하는 이유, 왜 값이 변하지 않는 ... –
https://developer.mozilla.org/en-US/docs/DOM/document.width – Andreas