J'ai une application Web, dont l'interface utilisateur est écrite en GWT, où pour diverses raisons, j'ai besoin de redimensionner la fenêtre active lorsque le serveur signale des choses. Pour ce faire, j'utilise une fonction JSNI qui utilise resizeTo et tout fonctionne très bien. J'ai fait un petit test et j'ai essayé d'envoyer quelques mises à jour du serveur et j'ai reçu une erreur "Accès refusé" de la commande resizeTo. Après quelques recherches sur google, j'ai découvert que c'était parce que le navigateur est toujours occupé par une autre commande resizeTo et lance une exception à cause de cela. Ma question est de savoir si quelqu'un a un bon moyen de voir si le navigateur est prêt/disponible pour être redimensionné? Une solution de contournement actuelle Je pense, mais je n'aime pas particulièrement, avoir un bloc try { } catch()
et si une exception est levée, puis l'attraper et appeler la fonction à nouveau dans le délai d'attente, mais je voudrais avoir une manière plus directe.resizeTo in JS me donne l'erreur "Accès refusé", comment savoir si le navigateur est prêt?
Merci, Itthaï
EDIT: Je pensais à un autre problème cependant, si la mise à jour A et la mise à jour B retour ensemble du serveur et A commence alors que B dort ms X, dans le même temps la mise à jour C est envoyée par le serveur et trouve que A est terminé bien que B ne se soit pas encore réveillé alors C s'exécute et seulement ensuite B ce qui est faux parce que B ne contient pas la taille la plus récente. Avez-vous une idée de solution? Est-ce un problème de condition de course? Merci
Pour votre information: la plupart des navigateurs modernes seront n ot laisser votre redimensionner la fenêtre plus être par défaut. Cela nécessite un changement d'options de sécurité dans le navigateur. – epascarello
Merci, mais je construis un système qui utilisera 'MFC' et envelopper l'objet navigateur Web de IE, ce qui permet cela, donc je suis en clair. – Ittai