J'ai un petit site, pas encore en ligne mais ça n'a pas d'importance. A l'intérieur, j'ai deux cadres:

<html>
<frameset border="transparent" cols="63%,37%">
<frame src="A.html" name="A" NORESIZE>
<frame src="B.html" name="B" NORESIZE>
</frameset>
</html>

Dans le cadre A, il y a un bouton.

<html>
<body>
<input onClick="#" type="button"/>
</body>
</html>

Dans l'image B, il y a une vidéo youtube:

<html>
<body>
<object id="obj" name="obj" width="100%" height="100%">
<param id="param" name="movie" value="http://www.youtube.com/url"/>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"/>
<embed id="embed" name="embed" src="http://www.youtube.com/url"" type="application/x-shockwave-flash" width="100%" height="100%" allowfullscreen="true"/>
</object>
</body>
</html>

Maintenant, j'essaie de laisser la source de l'incorporation et la valeur du paramètre (film nommé) changer dans une autre URL.
J'ai essayé beaucoup de codes. Les codes Javascript suivants, par exemple, ne fonctionneront pas:

top.frames["B"].document.getElementById("movie").value = 'http://www.youtube.com/otherurl';
top.frames["B"].document.getElementById("embed").src = 'http://www.youtube.com/otherurl';


Donc, si quelqu'un sait comment bien faire ces codes ou comment obtenir le même résultat avec d'autres codes, j'apprécierais vraiment.

Merci de vous attendre, VVW.

0
VVW 15 oct. 2011 à 00:38

4 réponses

Meilleure réponse

Merci à tous ceux qui ont répondu. J'ai expérimenté un peu tous les codes et mon résultat est en fait très simple.

top.frames["divtest"].document.getElementById("embed").setAttribute('src','http://www.youtube.com/v/lPMx86wXaKY?version=3&amp;hl=nl_NL');
top.frames["divtest"].document.getElementById("param").setAttribute('value','http://www.youtube.com/v/lPMx86wXaKY?version=3&amp;hl=nl_NL');

Je me demande pourquoi je n'ai pas proposé cela plus tôt, donc je m'excuse auprès de tout le monde et je vous remercie tous pour toute l'aide.

VVW

0
VVW 15 oct. 2011 à 11:25

Votre DOM est broketh:

Modifier <param id="param" name="movie" value="http://www.youtube.com/url"

À .. <param id="param" name="movie" value="http://www.youtube.com/url" />

1
AlienWebguy 14 oct. 2011 à 20:40

Du parent auquel vous ne pouvez pas accéder ni manipuler les éléments dans le cadre enfant, c'est une mesure de sécurité, sinon il serait facile de trouver des sites malveillants qui enveloppent les sites bancaires dans des iframes et le parent lirait le mot de passe que vous entrez .

Ne faites pas de cadres.

0
Carlos Aguayo 14 oct. 2011 à 20:50

Utilisez l 'API YouTube JavaScript Player. Appelez player.loadVideoById(). Assurez-vous que votre URL src d'origine contient &enablejsapi=1:

top.frames["B"].document.getElementById("embed").loadVideoById(id);
0
gilly3 14 oct. 2011 à 21:53