2008-11-14 5 views
3

J'ai intégré un swf dans ma page html, mais je voudrais qu'il permute à un autre swf quand j'ai cliqué sur un bouton en html. J'ai utilisé swfobject.js pour intégrer le swf, et j'utilise un prototype pour écrire le javascript. Je pensais que je peux faireComment utiliser javascript pour échanger swf en html?

$('movie').value = 'swf/bhts.swf'; 
alert($('movie').value); 

la valeur ne change à swf/bhts.swf, mais il continue à jouer le fichier swf d'origine ... ce est le code que j'utilise pour intégrer swf

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="530" height="298" id="flashcontent"> 
<param id="movie" name="movie" value="swf/trailer.swf" /> 
</object> 

merci.

Répondre

2

En utilisant SWFObject:

<div id='flashContent'> 
</div> 

<script type='text/javascript'>  
    // Setup your initial flash 
    var so = new SwfObject(.....); 
    so.write ('flashContent'); 

    // Some event handler 
    someElement.onclick = function() 
    { 
     // Load up the new SWF 
     so = new swfObject(....); 
     so.write('flashContent'); 
    } 
</script> 
0

Comment utilisez-vous SWFObject? Si vous utilisez la méthode swfobject.embedSWF pour ajouter le fichier SWF à votre fichier HTML, vous pouvez l'appeler de nouveau avec le même ID et supprimer l'ancien objet Flash Player et en ajouter un nouveau avec votre nouvelle URL.

Vous pouvez également utiliser les méthodes propres au fichier SWF pour remplacer l'URL qu'il utilise. Si vous avez l'ID de l'objet Flash, utilisez quelque chose comme

var swf = getElementById("flash_id"); 
swf.LoadMovie(0, "http://example.com/newSwfUrl.swf"); 

et qui devrait diriger le lecteur Flash pour recharger à partir d'un autre endroit, en remplacement de la couche 0 (par défaut). Cela peut ne pas marcher avec les vieux lecteurs Flash, mais ça devrait aller dans Flash 8 et plus tard.

Questions connexes