Salut,
Voilà plus d'une semaine que je butte sur un problème de CSS/JS/Flash, et je suis complètement perdu.
Pour résumer il sagit de mettre un player flash en "fullscreen" (dans cette solution, le player prends tout le document,non tout l'écran) sans avoir à ouvrir une nouvelle fenêtre.
Pour ça, coté js/css, j'utilise le div qui contient le <embed> ou <object> généré via un SWFObject (pour les problêmes du bug activeX de IE6) que j'aggrandit à la taille "max visible" du document.
Enfin pour gérer les problèmes de scroll (le document est forcément plus grand), je mets mon <body> en overflow:hidden et la meme taille que le div cité plus haut.
Coté Flash, le développeur utilise un écouteur sur son stage qui regarde si son stage à été modifié et lui demande donc de se resizer.
Voilà, en gros cette solution fonctionne presque parfaitement si ce n'est que le flash n'arrive pas à récupérer le changement d'état de son stage.
Le résultat c'est que le div se redimensionne bien comme prévu mais pas l'animation.
En fait, cette solution fonctionnait jusqu'à ce que règle le problème du scroll avec l'overflow:hidden sur <body>...
Incompréhensible.
Avant de vous donner le code, est ce que quelqu'un a déjà essayé ce genre de technique et éventuellement rencontré le même problême ?
Entre temps, nous avons également essayé une méthode plus direct via une fonction JS appel une fonction du Flash pour lui dire explicitement "Vas y, resize toi". Mais là encore, si j'appel cette fonction depuis mon gestionnaire, je n'y arrive pas.
Par contre si c'est le flash qui appel cette fonction, il recupere bien ses petits.
Merci d'avance pour remarques et suggestions
Voici le html pour le flash et le bout de js qui est censé faire l'appel explicite à ce player.
Le code html du player
La fonction js pour l'appel explicite
Voilà plus d'une semaine que je butte sur un problème de CSS/JS/Flash, et je suis complètement perdu.
Pour résumer il sagit de mettre un player flash en "fullscreen" (dans cette solution, le player prends tout le document,non tout l'écran) sans avoir à ouvrir une nouvelle fenêtre.
Pour ça, coté js/css, j'utilise le div qui contient le <embed> ou <object> généré via un SWFObject (pour les problêmes du bug activeX de IE6) que j'aggrandit à la taille "max visible" du document.
Enfin pour gérer les problèmes de scroll (le document est forcément plus grand), je mets mon <body> en overflow:hidden et la meme taille que le div cité plus haut.
Coté Flash, le développeur utilise un écouteur sur son stage qui regarde si son stage à été modifié et lui demande donc de se resizer.
Voilà, en gros cette solution fonctionne presque parfaitement si ce n'est que le flash n'arrive pas à récupérer le changement d'état de son stage.
Le résultat c'est que le div se redimensionne bien comme prévu mais pas l'animation.
En fait, cette solution fonctionnait jusqu'à ce que règle le problème du scroll avec l'overflow:hidden sur <body>...
Incompréhensible.
Avant de vous donner le code, est ce que quelqu'un a déjà essayé ce genre de technique et éventuellement rencontré le même problême ?
Entre temps, nous avons également essayé une méthode plus direct via une fonction JS appel une fonction du Flash pour lui dire explicitement "Vas y, resize toi". Mais là encore, si j'appel cette fonction depuis mon gestionnaire, je n'y arrive pas.
Par contre si c'est le flash qui appel cette fonction, il recupere bien ses petits.
Merci d'avance pour remarques et suggestions
Voici le html pour le flash et le bout de js qui est censé faire l'appel explicite à ce player.
Le code html du player
...
<div id="flash_player" style="position: relative;">
<embed width="99%" height="99%" allowscriptaccess="always" quality="high" bgcolor="#000000" name="player_swf" id="player_swf" style="" src="/missglad-tube/player.swf?file=http%3A%2F%2Frdr.diff.missglad.com%2Fa70231b28b7e8d8fcb9cf865800d7bad.flv" type="application/x-shockwave-flash"/>
</div>
...
La fonction js pour l'appel explicite
...
//Appel explicite envoyé au player flash pour lui indiquer un resize
callFlashResize = function(){
var flash_anim = window.player_swf || document.player_swf;
flash_anim.onResizeFromJS();
}
...