Question

Utilisation du contrôle Webbrowswer pour naviguer dans un site. Parfois, des erreurs se produisent qui impliquent une boîte de dialogue javascript. J'aimerais faire quelques choses lorsque cela se produit.

  1. Sachez quand une alerte javascript apparaît.

J'ai utilisé l'événement LostFocus avec un certain succès, mais chaque fois qu'il perd le focus, le code est exécuté, ce qui est agaçant.

  1. Je voudrais connaître le texte exact indiqué dans la boîte d’alerte.

Je ne sais pas où trouver l'objet de boîte d'alerte ni le convertir pour l'utiliser en C #. J'ai regardé partout sur Internet et je ne pouvais pas le trouver.

Quelqu'un a-t-il un indice?

Était-ce utile?

La solution

Si vous souhaitez uniquement intercepter les boîtes de dialogue d'erreur de script qui apparaissent, je vous recommande d'intercepter le window.onerror événement DOM. Si vous affectez un gestionnaire à cet événement, le message, le nom du fichier (script) et le numéro de ligne sont transmis sous forme d'arguments. Ce sont tous les éléments affichés dans la boîte de dialogue d'erreur qui s'affiche. Notez que la plupart des utilisateurs ont des boîtes de dialogue d’erreur de script désactivées par défaut. Il serait donc sage de respecter ce principe si le but recherché est d’atteindre un large public.

Je ne sais pas s'il existe un moyen plus simple, je n'ai travaillé qu'avec l'ancien composant COM WebBrowser.

Autres conseils

Faites ceci:

window.alert = function(txt) {
   // Do something
}

Cela vous permettra de faire un rappel ou n'importe quoi d'autre avec le texte de l'alerte.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top