Partager via


Accès aux cadres dans le modèle d'objet de document HTML managé

Certains documents HTML sont composés de cadres ou de fenêtres qui peuvent contenir leurs propres documents HTML distincts. L’utilisation de cadres facilite la création de pages HTML dans lesquelles une ou plusieurs parties de la page restent statiques, telles qu’une barre de navigation, tandis que d’autres images changent constamment leur contenu.

Les auteurs HTML peuvent créer des images de l’une des deux manières suivantes :

  • Utilisation des balises FRAMESET et FRAME, qui créent des fenêtres fixes.

- ou -

  • À l’aide de la balise IFRAME, qui crée une fenêtre flottante pouvant être repositionnée au moment de l’exécution.
  1. Étant donné que les cadres contiennent des documents HTML, ils sont représentés dans le modèle DOM (Document Object Model) en tant qu’éléments de fenêtre et éléments frame.

  2. Lorsque vous accédez à un FRAME ou un IFRAME dans la balise à l’aide de la collection Frames de HtmlWindow, vous récupérez l’élément de fenêtre correspondant au frame. Cela représente toutes les propriétés dynamiques de l’image, telles que son URL actuelle, son document et sa taille.

  3. Lorsque vous accédez à une FRAME balise ou IFRAME à l’aide de la WindowFrameElement propriété de HtmlWindow, de la Children collection ou des méthodes telles que GetElementsByName ou GetElementById, vous récupérez l’élément cadre. Cela représente les propriétés statiques du frame, y compris l’URL spécifiée dans le fichier HTML d’origine.

Cadres et sécurité

L’accès aux images est compliqué par le fait que le DOM HTML managé implémente une mesure de sécurité appelée sécurité de script inter-images. Si un document contient un FRAMESET ou plusieurs FRAMEs dans des domaines différents, ceux-ci FRAMEne peuvent pas interagir entre eux. En d'autres termes, un FRAME qui affiche du contenu à partir de votre site Web ne peut pas accéder aux informations d’un FRAME hébergeant du contenu tiers tel que http://www.adatum.com/. Cette sécurité est implémentée au niveau de la HtmlWindow classe. Vous pouvez obtenir des informations générales sur un FRAME autre site Web, tel que son URL, mais vous ne pourrez pas y accéder Document ou modifier la taille ou l’emplacement de son hébergement FRAME ou IFRAME.

Cette règle s’applique également aux fenêtres que vous ouvrez à l’aide des méthodes Open et OpenNew. Si la fenêtre que vous ouvrez se trouve dans un domaine différent de la page hébergée dans le WebBrowser contrôle, vous ne pourrez pas déplacer cette fenêtre ou examiner son contenu. Ces restrictions sont également appliquées si vous utilisez le WebBrowser contrôle pour afficher un site Web différent du site Web utilisé pour déployer votre application Windows Forms. Si vous utilisez la technologie de déploiement ClickOnce pour installer votre application à partir du site Web A, et que vous utilisez WebBrowser pour accéder au site Web B, vous ne pourrez pas accéder aux données du site Web B.

Voir aussi