Comment prolonger le délai d’expiration des scripts de navigateur

J’ai un certain JQuery qui prend un certain temps à courir et après quelques secondes j’obtiens l’erreur:

N’exécutez plus ce script? Un script sur cette page provoque Internet Explorer pour l’exécution de slowley. S’il continue à fonctionner, votre ordinateur peut ne plus répondre

Y at-il un moyen de prolonger le délai d’attente? Je suppose que cela voudrait dire prolonger le délai d’attente sur la machine des personnes qui accède à l’URL

Si vous exécutez votre script sous Google Chrome, vous pouvez désactiver le moniteur d’arrêt avec l’indicateur: –disable-hang-monitor sur la ligne de commande.

Sous les navigateurs basés sur Mozilla (par exemple, Firefox, Camino, SeaMonkey, Iceweasel), accédez à about: config et modifiez la valeur de la clé dom.max_script_run_time.

Sous Internet Explorer, le nombre maximal d’instructions pouvant être exécutées dans un script avant l’affichage de la boîte de dialog de délai d’attente est contrôlé par une clé de registre:

HKEY_CURRENT_USER \ Software \ Microsoft \ InternetExplorer \ Styles \ MaxScriptStatements

Ceci est un maximum de déclarations, il ne devrait donc pas être lié à la vitesse d’exécution de l’ordinateur. Il y a peut-être d’autres valeurs que je ne connais pas.

La valeur par défaut est 5 000 000. Vous en faites trop?

Voir http://support.microsoft.com/kb/175500 .

Si vous parlez d’une modification par programme, vous ne pouvez pas, puisqu’il s’agit d’une action non sécurisée et qu’aucun navigateur ne vous le permet.

PS Comme suggéré ci-dessus, essayez de comprendre le problème et de refactoriser votre code pour réduire le temps d’exécution.

jQuery a sa propre propriété de délai d’attente. Voir: http://www.mail-archive.com/jquery-en@googlegroups.com/msg15274.html

Cependant, le message que vous recevez n’est pas un problème jQuery, mais un problème de serveur ou d’architecture.

Essayez de voir si vous chargez trop d’appels Ajax en même temps. Voyez si vous pouvez le changer pour gérer moins d’appels à la fois.

Vérifiez également sur le serveur combien de temps il faut pour obtenir une réponse. En cas de demandes XHR longues, le serveur peut prendre trop de temps pour répondre. Dans ce cas, l’application ou le service côté serveur doit être modifié.

J’espère que cela pourra aider.