Ceci est mon code:setTimeout en boucle pour vérifier un changement dans les limites
var b;
while(!b){
setTimeout(function(){
alert('sss')
b=1;
}, 500);
}
et il ne sera pas alerte « sss »
Que puis-je faire?
Mise à jour:
Je veux obtenir des limites sur google maps v3:
function get_bounds(){
var bounds_;
while(!bounds_){
setTimeout(function(){
bounds_=map.getBounds();
if(bounds_){
var leftBottom=[bounds_.getSouthWest().lat(),bounds_.getSouthWest().lng()]
var rightTop=[bounds_.getNorthEast().lat(),bounds_.getNorthEast().lng()]
return [leftBottom,rightTop];
}
}, 500);
}
}
updated2:
salut patrick dw, je ne sais pas pourquoi, mais votre le code ne fonctionne pas:
var b;
function waitForB() {
setTimeout(function(){
if(!b)
waitForB();
else
alert('sss');
}, 500);
}
waitForB()
updated3:
il est ok maintenant:
var b;
function waitForB() {
setTimeout(function(){
if(!b){
waitForB();
b='ss';
}
else{
alert('sss')
}
}, 500);
}
waitForB()
Vous avez oublié un point-virgule après alerte (...) –
Oui c'est vrai, mais les points-virgules ne sont pas toujours obligatoires en Javascript. – Pointy
@Radomir: Grâce à JavaScript, le ';' ne fera pas vraiment de différence. JS assumera une nouvelle ligne comme un délimiteur de ligne en l'absence d'un ';' ou n'étant pas dans un bloc '(...)'. –