Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Laurent vilday
Patrice Chevée :
y a t il un moyen de se sortir "proprement" d'une boucle genre
while(true) alert("Tu l'as dans l'os!!");
sans killer le brouteur?
Non. A moins que le navigateur ne propose un moyen, je crois (non vérifié) que Opéra et Chrome finissent par se rendre compte que ça boucle et proposent un moyen de s'en sortir.
Mais si le navigateur n'a rien prévu, alors la seule solution c'est kill.
Moralité : Ne pas (jamais) utiliser alert(), surtout pas comme méthode de débug.
Au pire si tu ne veux pas transformer tes alert() en éléments[1] HTML, je te conseille de te créer ta propre méthode pour remplacer alert() :
function myAlert(msg) { if ( myAlert.keepGoing ) { myAlert.keepGoing = window.confirm(msg); } } myAlert.keepGoing = true;
while(true) { myAlert("Pas dans l'os !! M'enfin while(true){} quand même"); }
[1] window.alert() n'est rien d'autre qu'un <DIV> en position absolute centré sur le viewport qui a la fâcheuse habitude d'être modal. Comportement modal qui se trouve être le problème que tu rencontres.
-- laurent
Patrice Chevée :
y a t il un moyen de se sortir "proprement" d'une boucle genre
while(true) alert("Tu l'as dans l'os!!");
sans killer le brouteur?
Non. A moins que le navigateur ne propose un moyen, je crois (non
vérifié) que Opéra et Chrome finissent par se rendre compte que ça
boucle et proposent un moyen de s'en sortir.
Mais si le navigateur n'a rien prévu, alors la seule solution c'est kill.
Moralité : Ne pas (jamais) utiliser alert(), surtout pas comme méthode
de débug.
Au pire si tu ne veux pas transformer tes alert() en éléments[1] HTML,
je te conseille de te créer ta propre méthode pour remplacer alert() :
function myAlert(msg)
{
if ( myAlert.keepGoing )
{
myAlert.keepGoing = window.confirm(msg);
}
}
myAlert.keepGoing = true;
while(true)
{
myAlert("Pas dans l'os !! M'enfin while(true){} quand même");
}
[1] window.alert() n'est rien d'autre qu'un <DIV> en position absolute
centré sur le viewport qui a la fâcheuse habitude d'être modal.
Comportement modal qui se trouve être le problème que tu rencontres.
y a t il un moyen de se sortir "proprement" d'une boucle genre
while(true) alert("Tu l'as dans l'os!!");
sans killer le brouteur?
Non. A moins que le navigateur ne propose un moyen, je crois (non vérifié) que Opéra et Chrome finissent par se rendre compte que ça boucle et proposent un moyen de s'en sortir.
Mais si le navigateur n'a rien prévu, alors la seule solution c'est kill.
Moralité : Ne pas (jamais) utiliser alert(), surtout pas comme méthode de débug.
Au pire si tu ne veux pas transformer tes alert() en éléments[1] HTML, je te conseille de te créer ta propre méthode pour remplacer alert() :
function myAlert(msg) { if ( myAlert.keepGoing ) { myAlert.keepGoing = window.confirm(msg); } } myAlert.keepGoing = true;
while(true) { myAlert("Pas dans l'os !! M'enfin while(true){} quand même"); }
[1] window.alert() n'est rien d'autre qu'un <DIV> en position absolute centré sur le viewport qui a la fâcheuse habitude d'être modal. Comportement modal qui se trouve être le problème que tu rencontres.
-- laurent
rm
Salut, Le Sun, 12 Apr 2009 16:04:40 +0200, Laurent vilday a écrit:
Patrice Chevée : y a t il un moyen de se sortir "proprement" d'une boucle genre while(true) alert("Tu l'as dans l'os!!"); sans killer le brouteur? Non. A moins que le navigateur ne propose un moyen, je crois (non vérifié) que Opéra et Chrome finissent par se rendre compte que ça boucle et proposent un moyen de s'en sortir.
Je confirme, au moins pour Opera, qui dispose dans la boite de message d'une option pour mettre fin à l'exécution de script http://files.myopera.com/ra_mon/albums/166505/alert_stop_js_loop.png
@+ -- rm - http://opera-fr.com Using Opera's NNTP client: http://www.opera.com/mail/
Salut,
Le Sun, 12 Apr 2009 16:04:40 +0200, Laurent vilday <mokhet@mokhet.com> a écrit:
Patrice Chevée :
y a t il un moyen de se sortir "proprement" d'une boucle genre
while(true) alert("Tu l'as dans l'os!!");
sans killer le brouteur?
Non. A moins que le navigateur ne propose un moyen, je crois (non
vérifié) que Opéra et Chrome finissent par se rendre compte que ça
boucle et proposent un moyen de s'en sortir.
Je confirme, au moins pour Opera, qui dispose dans la boite de message d'une option pour mettre fin à l'exécution de script
http://files.myopera.com/ra_mon/albums/166505/alert_stop_js_loop.png
@+
--
rm - http://opera-fr.com
Using Opera's NNTP client: http://www.opera.com/mail/
Salut, Le Sun, 12 Apr 2009 16:04:40 +0200, Laurent vilday a écrit:
Patrice Chevée : y a t il un moyen de se sortir "proprement" d'une boucle genre while(true) alert("Tu l'as dans l'os!!"); sans killer le brouteur? Non. A moins que le navigateur ne propose un moyen, je crois (non vérifié) que Opéra et Chrome finissent par se rendre compte que ça boucle et proposent un moyen de s'en sortir.
Je confirme, au moins pour Opera, qui dispose dans la boite de message d'une option pour mettre fin à l'exécution de script http://files.myopera.com/ra_mon/albums/166505/alert_stop_js_loop.png
@+ -- rm - http://opera-fr.com Using Opera's NNTP client: http://www.opera.com/mail/
Pascal PONCET
Patrice Chevée a écrit :
y a t il un moyen de se sortir "proprement" d'une boucle genre while(true) alert("Tu l'as dans l'os!!"); sans killer le brouteur?