Comment inserer une page html dans une animation flash ?
------------------------------------------------ --------
>>>Et bien c'est impossible !
Enfin dans le sens strict du terme, flash ne peut pas simuler le comportement d'une iframe ! Mais je vous rassure, on peut tout de mème réussir à charger une page html et a en affiché le contenu. Par contre, votre animation ne reconnaitra que les balises natives de Flash. Donc aucunes balises exotiques, ni de div personnalisées, juste la base ...
Mais on peut quand mème réussir à manipuler le code source de la page chargée, pour en isoler certaines infos, ou pour se faire sa propre mise en forme pour palier aux manques de balises de flash.
Pour l'exemple:
---------------
Dans les 2 exemples du zip, j'ai utilisé un fichier "test.html" se trouvant dans le mème dossier que mon swf. Il faut savoir que pour pouvoir charger un fichier distant (autre domaine), il vous faudra ruser en passant par un fichier php.
Cette methode de contournement, je l'explique dans cette autre billet: Charger un fichier distant
Je vous invite à lire le billet en question après avoir assimilé ce billet-ci ;)
Utilisation de loadvars
-----------------------
Pour recuperer le code source de notre page html, on va evidement utiliser la classe loadvars, qui permet de loader casi n'importe quel fichier dans flash.
Usuellement, si vous vous ètes déjà servi de loadvars, vous savez que l'on se sert de l'evenement "onLoad" pour savoir si le fichier a bien été chargé, et executé notre code seulement à partir de ce moment.
Et bien dans notre cas, on va utiliser un autre evenement, car "onLoad" va interpéter les données chargées (comme les variables de type "&mavar=montexte&autrevar=autre texte&"), ce qui evidement ne nous interèsse pas, etant donné que notre but c'est de recuperer le code sources de la page sans aucune interpretation.
Donc pour mes exemples, je vais utiliser l'evenement "onData":
"Invoqué lorsque les données ont été totalement téléchargées à partir du serveur ou lorsqu'une erreur se produit au cours du téléchargement des données à partir d'un serveur. Ce gestionnaire est invoqué avant l'analyse des données et peut être utilisé pour appeler une routine d'analyse personnalisée au lieu de celle intégrée à Flash Player"
(La routine integrée à Flash est l'evenement "onLoad")