Souci d'affichage après visibilité d'un bloc
Bonsoir,
Voici le code suivant, certes fonctionnel, qui me pose cependant un souci d'affichage sous Internet Explorer, alors qu'il s'affiche parfaitement sous Firefox :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| <script language="javascript" type="text/javascript">
table_parties = new Array("partie_3", "partie_3-2", "partie_3-3", "partie_3-4");
function changevideo(parti)
{
for(x in table_parties)
{
if(parti==table_parties[x])
{
document.getElementById(table_parties[x]).style.position='relative';
setTimeout('a=2;',1000);
document.getElementById(table_parties[x]).style.visibility='visible';
}
if(parti!=table_parties[x])
{
document.getElementById(table_parties[x]).style.position='absolute';
document.getElementById(table_parties[x]).style.visibility='hidden';
}
}
}
</script>
<div align="center" id="partie_3" style="position:absolute;visibility:hidden;">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="650" height="420" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="autoStart" value="0" />
<param name="movie" value="video.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name="FLASHVARS" value="classe=2009-02-21&maxx=3" />
<embed src="video.swf" FLASHVARS = "classe=2009-02-21&maxx=3" quality="high" bgcolor="#ffffff" width="650" height="420" align="middle" allowScriptAccess="sameDomain" autoStart="0" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</div>
<div align="center" id="partie_3-2" style="position:absolute;visibility:hidden;">
... etc code dans le même style qu'au-dessus, il y a 4 videos l'une en-dessous de l'autre...
</div> |
Mon souci fait que, lorsque la video s'affiche lors de l'appel de la fonction JS, la video apparaît dans une frame, ok, mais en total décalé à l'écran. Pure souci d'affichage qui est réglé lorsque je touche à la barre séparant les deux frames, mais je vois mal un visiteur faire ce genre de chose ;) Ensuite la video apparaît bien au milieu de la frame.
Souci lié a priori au code pour rendre visible :
Code:
setTimeout('a=2;',1000);
J'ai essayé un setTimeout à 100, ou à 2000, le temps avant affichange change bien (logique) mais l'affichage de la video débloque toujours en décalé, donc bonjour l'esthétique...
J'avais déjà eu ce souci avec un bloc <div> sur un site, apparaîssant à peu près sur le même principe (un formulaire avec des cases à cocher, rien à voir avec une video). La seule solution trouvée avait été d'utiliser du code pour modifier dynamiquement la hauteur de la fenêtre (+ 1 pixel). Mais c'était une interface de saisie en interne, un peu perturbant mais ce n'était pas pour des visiteurs qui risquent de trouver mon astuce un peu chiante à chaque clique pour afficher chaque video :)
Donc si quelqu'un avait la moindre idée de comment résoudre ce souci d'ordre esthétique cela m'arrangerait fortement, car là, je sèche.
Merci
A+