2014-10-09 2 views
0

거의 제 질문은 간단하며 게시하기 전에 비슷한 질문을했습니다. 페이지가 열려있는 동안 Javascript 코드를 반복 실행하는 방법을 알고 싶습니다. 코드가 한 번 실행되고 완료되거나 이벤트 처리기에만 응답하는 것입니다. 나는 거의 자바 스크립트 동등 물을 원한다 :자바 스크립트 조건 확인 모든 프레임

$(document).ready(function() { 

}); 

그러나 덜 효율적이기 때문에 Jquery를 사용하고 싶지 않다. 나는 매 프레임마다 === 조건을 확인하고 싶다.

+0

setInterval을을 봐 위해 window.onload 기능

 window.onload = function() { function test() { alert("test"); } setInterval(test, time_miliseconds); 

}() 안의 – jollarvia

+0

감사합니다! 원하는 결과에 실제로 통합하는 방법에 대한 간단한 코드 예제를 줄 수 있습니까? – turkey3

+1

* 대신 코드가 한 번 실행되고 완료되거나 이벤트 처리기에만 응답합니다. *이 작업을 수행해야합니다. 코드가 논스톱으로 실행되는 경우 페이지가 멈 춥니 다. 'setInterval' 루프를 사용하면 어떤 문제에 대해서도 효율적인 접근법이 아닙니다. 나는 당신이 여기서 무엇을하고 있는지 모른다. 그러나 동일한 코드를 반복적으로 실행하려고 할 때마다 효율적이지는 않다. (당신이 작성한 코드보다 jQuery가 더 효율적이라고 말한다.) –

답변

-1
setInterval(function(){ 
    var blah = whatever; 
    if (done){ 
     clearInterval(); 
    } 
},time_in_milliseconds); 

루프는 사용자의 밀리 초 인수에 따라 루핑을 유지합니다. 루프를 1 밀리 초보다 얇게 만들거나 컴퓨터가 할 수있는만큼 힘들게하려면 그냥 보통 (사실) {}이면 충분합니다.

+0

쿨! 루프의 많은 요소에 대해 onClick 핸들러를 검사하기 위해 이것을 사용할 것입니다. 마지막 질문 : 프레임 속도를 초당 60, 초당 정확히 60 프레임으로 가정했을 때 실행을위한 최선의 방법은 무엇입니까? 내가 설정 한 16.6 밀리 초를 추측하고 있습니까? 그러나 모든 프레임을 점검해야하므로 10 밀리 초이면 충분합니까? – turkey3

+0

time_in_milliseconds = 1000; //초당; time_in_milliseconds/= 60; – jollarvia

+0

setInterval은 비 차단이므로 위에 언급 된 derek처럼 게임과 같은 작업을 수행하려는 경우이 방법이 될 것입니다. – jollarvia

2

사용하여 setInterval ..