2016-04-12 39 views
0
var ele=Boolean(document.getElementById("seconds").innerHTML>=30) 
while(ele==false) 
if(ele){ 

Bunu sürekli kontrol etmek ve doğru olduğunda çalıştırmak istiyorum. Bunu nasıl yapabilirim? Sadece while döngüsünü çalıştırmak istiyorum, daha sonra if döngüsünü ancak konsolda çalıştırın.konsolda yinelenen javascript işlevi nasıl çağrılır

cevap

3

Bir şeyi yürütmek üzere bir işlev oluşturmak için setInterval'ı kullanın ve durumunuz doğru olduğunda bunu durdurmak için clearInterval (id) kullanın.

türü bu Konsolunuzdaki: refreshIntervalId = setInterval (function() {console.log ('merhaba'); if ((new Date) .getMinutes()> 27) {clearInterval (refreshIntervalId)}} 1000);

2

Konsolda while döngüsünü çalıştırma testi, tarayıcımı hızla çöktü. İyi bir fikir değil. Bunun yerine, bir setInterval kullanmayı deneyin.

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
</head> 
<body> 
<div id="seconds">30</div> 
<script> 
var myTest; 
myTest = setInterval(checkElement, 100); 
// elem is set outside the function so the function runs quicker, but in reality, this won't make a significant difference in this example 
var elem = document.getElementById("seconds"); 
function checkElement(){ 
    if(parseInt(elem.textContent)>30){ 
      console.log(Math.random()); 
      clearInterval(myTest); 
    } 
} 
</script> 
</body> 
</html> 
İlgili konular