2010-08-06 11 views
0

J'écris une application HTML (HTA) qui fonctionne en plein écran et permet aux utilisateurs de parcourir une liste de sites Web sélectionnés. Je remarque que parfois lorsque vous cliquez sur le lien pour charger un site Web externe, il n'y a pas de retour à l'utilisateur que le navigateur a accepté la demande et a commencé à essayer de charger la page.Dans VBScript, existe-t-il un moyen de savoir si IE est occupé à charger quelque chose (par exemple une page ou XHR)?

Dans Internet Explorer, vous obtenez une petite icône de rotation dans l'onglet actif et une barre de progression dans la zone de notification pour indiquer que le navigateur charge quelque chose. Je voudrais inclure cette fonctionnalité dans mon HTA.

choses que j'ai essayé:

La liste des sites apparaît dans un menu en haut de l'écran et le site de l'utilisateur est la navigation apparaît dans une iframe en dessous. J'ai essayé d'utiliser l'événement onreadystatechange d'Internet Explorer pour détecter quand l'emplacement de l'iframe change, mais j'ai remarqué que le readyState ne change pas en "loading" dès que le lien est cliqué - il semble se déclencher seulement après qu'il reçoive une réponse du serveur. Donc, si le serveur prend 5 secondes pour répondre avec quelque chose, alors l'HTA semble être assis là à ne rien faire pendant 5 secondes.

Des idées? Merci d'avoir pris le temps de lire ceci et répondre =)

Amitiés

-Iain

Répondre

0

Peut-être:

While oIE.Busy 
    WScript.Sleep 100 
Wend 
2

Je vous suggère d'utiliser ReadyState plutôt que 'Occupé'

do until ie.readyState = 4 : wscript.sleep 10 : loop