무한 루프에서 JavaScript 가을 트리거하지 않는 경고를 통해 브라우저
-
09-06-2019 - |
문제
나를 표시하는 이미지 집합으로 오버레이를 사용하여 Google Maps.시 이러한 이미지해야에서 끝없는 반복 하지만 대부분의 대부분의 브라우저를 감지하고 표시합니다.
방법은 없을 만드는 무한 루프에서 자바스크립트가 없다는 중지하거나 경고하여 브라우저는 무엇입니까?
해결책
도 setInterval 나 setTimeout.
다음 예를 참고하십시오.
(show = (o) => setTimeout(() => {
console.log(o)
show(++o)
}, 1000))(1);
.as-console-wrapper { max-height: 100% !important; top: 0; }
다른 팁
당신이 사용해야 하는 타이머를 지속적으로 새로운 대신 이미지의 무한 루프입니다.확인 setTimeout()
기능입니다.경고는 당신을 호출해야에서 함수를 호출하는 자체가,그것을 다시 기다려야합니다.예제에서 촬영 w3schools:
var c = 0
var t;
function timedCount() {
document.getElementById('txt').value = c;
c = c + 1;
t = setTimeout("timedCount()", 1000);
}
<form>
<input type="button" value="Start count!" onClick="timedCount()">
<input type="text" id="txt">
</form>
다음 코드를 간격을 설정하고 이미지 설정을 다음 이미지는 배열에서 이미지의 원본에 모든 두 번째입니다.
function setImage(){
var Static = arguments.callee;
Static.currentImage = (Static.currentImage || 0);
var elm = document.getElementById("imageContainer");
elm.src = imageArray[Static.currentImage++];
}
imageInterval = setInterval(setImage, 1000);
를 사용하는 대신 무한 루프를 만들이 타이머 유지하는 발포 n 초마다-당신을 얻을 것이'영원히 실행 화면 브라우저없이 끊습니다.
아마도 타이머를 사용하여 검색하는 다음의 이미지마다 진드기,불행하게도 내가 알지 못하는 모든 JavaScript 을 제공 할 수 있도록 코드 샘플
맞는 경우 당신의 경우,당신을 유지할 수 있습 로드하는 새로운 이미지를 사용자 상호 작용에 대한 응답,다음과 같 이 웹사이트 (스크롤 다운).
그냥 공식적인 응답:
var i = 0;
while (i < 1) {
do something...
if (i < 1) i = 0;
else i = fooling_function(i); // must return 0
}
나는 생각하지 않는 브라우저 감지하지 못한 것들입니다.
function foo() {
alert('hi');
setTimeout(foo, 5000);
}
다음 사용과 같은 작업을 수행한 다음"onload"를'foo'
제휴하지 않습니다 StackOverflow