bonjour,

Voilà, j'aimerais pouvoir mettre dans ma page un petit coin video, j'ai 6 liens, quand je clique sur un des liens, j'ai une video youtube qui se joue dans ma partie video, sur un autre lien une autre video, etc....

Voici mon code pour le moment :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
 
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
	<head>
		<title>bleh</title>
		<meta http-equiv="Content-Type" content="text/HTML; charset=iso-8859-1" />
		<meta http-equiv="Pragma" content="No-Cache" />
		<meta http-equiv="Cache-Control" content="No-Cache" />
		<meta http-equiv="Expires" content="+1" />
		<meta name="Revisit-after" content="7 days" />
		<meta name="Keywords" content="bleh" />
		<link rel="stylesheet" type="text/css" href="style.css" />
		<script type="text/javascript" src="swfobject.js"></script>
		<script language="javascript">
		<!--
			function init()
			{
				idcurrent = 0;
				changeVid(1);
			}
			function onYouTubePlayerReady(playerid)
			{
				ytplayer = document.getElementById('myytplayer');
				ytplayer.playVideo();
			}
			function changeVid(id)
			{
				if(idcurrent != 0)
				{
					ytplayer.stopVideo();
					ytplayer.clearVideo();
				}
 
				var params = { allowScriptAccess: "always" };
    				var atts = { id: "myytplayer"};
 
				if(id == 1 && idcurrent!=1)
				{
					maskAll();
					document.getElementById('bas1').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 1;
				}
				else if(id == 2 && idcurrent!=2)
				{
					maskAll();
					document.getElementById('bas2').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 2;
				}
				else if(id == 3 && idcurrent!=3)
				{
					maskAll();
					document.getElementById('bas3').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 3;
				}
				else if(id == 4 && idcurrent!=4)
				{
					maskAll();
					document.getElementById('bas4').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 4;
				}
				else if(id == 5 && idcurrent!=5)
				{
					maskAll();
					document.getElementById('bas5').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 5;
				}
				else if(id == 6 && idcurrent!=6)
				{
					maskAll();
					document.getElementById('bas6').visibility = 'visible';
 
					swfobject.embedSWF("http://www.youtube.com/v/...&enablejsapi=1&playerapiid=ytplayer", 
                       				"ytapiplayer", "300", "250", "8", null, null, params, atts);
 
					idcurrent = 6;
				}
			}
			function maskAll()
			{
				document.getElementById('bas1').visibility = 'hidden';
				...
			}
 
		-->
		</script>
	</head>
	<body onload="init();">
		<div class="corp">
			<div class="bando">
				<img src="images/bd-titre.gif" class="bando" alt="" />
			</div>
			<div class="menu" style="height: 866px;">
				<img src="images/bd-menu.gif" class="menu" alt="" />
			</div>
			<div class="content">
				...
				<div style="position:absolute;margin-top: 559px;margin-left: 200px;">
					<div id="ytapiplayer"></div>
				</div>
			</div>
		</div>
	</body>
</html>
Le problème est que ca ne marche pas dès que je lance une nouvelle video (et le playVideo() ne marche pas non plus, je dois appuyer moi même).

L'erreur viendrait de swfobject, en effet, en retirant un second accès swfobject là où il y en avait deja un, j'ai plus d'erreur.

Quelqu'un peut-il m'aider svp?

EDIT :

Bon, j'ai réussi apparament à charger mes video en modifiant ma méthode (je charge mes 6 vidéos en mémoire dans le init, dans des blocs différents).

Mais j'ai un autre problèmes, voici comment sont formés mes blocs vidéos :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<div id="bas4" style="position: absolute;margin-left: 0px;margin-top: 489px;visibility: hidden;">
					<img src="images/page-bas04.gif" style="position: absolute;margin-left: 0px;margin-top: 0px;border: 0px;" alt="" />
					<div style="position:absolute;margin-top: 70px;margin-left: 200px;">
						<div id="ytapiplayer4"></div>
					</div>
				</div>
mes vidéos sont mise dans la div <div id="ytapiplayer4"></div>

Et mon but est de changer la visibilité de mes blocs en fonction de la video que je veux voir apparaitre.

Le problème est que je ne peux pas changer ma propriété visibility si il y a du flash à l'interieur. Je pense que c'est un problème connu, mais je n'ai pas la solution.