화면에서 일종의 과일 파리에서 작업 중이지만 프로그래밍 중입니다. 처음에는 매우 큰 코드를 적었습니다.하지만 뭔가 잘못되었다는 것을 발견했습니다. 과일 파리는 왼쪽으로 움직 였지만 오른쪽으로는 움직이지 않았습니다.다른 스위치가 작동하는 동안 하나의 스위치 조건이 작동하지 않습니다.
case 90:
fly.style.marginLeft = (parseInt(left) + sw).toString();
break;
코드 "왼쪽에서 270도까지": "90 개도에서 오른쪽에있는"
코드
case 270:
fly.style.marginLeft = (parseInt(left) - sw).toString();
break;
90도는 이입니다 하지 작업 270입니다 작동하지만 90은 왜 작동하지 않습니까?
document.body.innerHTML = document.body.innerHTML + "<img id='fly' onclick='hi();' src='http://screen-bug.googlecode.com/git/fruitfly-moving.gif'>";
var fly = document.getElementById("fly");
var rotation = 0;
var ramargintop = Math.floor(Math.random() * screen.height);
var ramarginleft = Math.floor(Math.random() * screen.width);
fly.style.marginTop = ramargintop;
fly.style.marginLeft = ramarginleft;
var interval = setInterval(movefly, 50);
function movefly(){
// rotation += Math.floor((Math.random() * 20) - 9.46);
if(rotation < 0){
rotation += 360;
}else if(rotation > 360){
rotation -= 360;
}
fly.style.transform = "rotate(" + rotation + "deg)";
moveflyforward();
}
function moveflyforward(){
var topa = fly.style.marginTop;
var left = fly.style.marginLeft;
var sw = 0.2;
switch(rotation){
case 0:
fly.style.marginTop = (parseInt(topa) - sw).toString();
break;
case 90:
fly.style.marginLeft = (parseInt(left) + sw).toString();
break;
case 180:
fly.style.marginTop = (parseInt(topa) + sw).toString();
break;
case 270:
fly.style.marginLeft = (parseInt(left) - sw).toString();
break;
case 360:
fly.style.marginTop = (parseInt(topa) - sw).toString();
break;
default:
document.body.innerHTML = "<font color='red' size='30'>Error on fly, please contact [email protected] about this. CODE: MoveForwardSwitch</font>";
break;
}
}
더 자세한 질문 제목을 사용하십시오. 이것은 모든 질문을 전혀 대표하지 않습니다. – Joeytje50
전체 코드를 게시 할 수 있습니까? 이것은 디버깅하기에 충분하지 않습니다. – Vince
코드는 * 여기에 * 있어야하며 다른 웹 사이트에는 필요하지 않습니다. – isherwood