Risposte:
L'approccio migliore per incorporare un file SWF in una pagina HTML è utilizzare SWFObject .
È una semplice libreria JavaScript open source che è un metodo facile da usare e conforme agli standard per incorporare il contenuto Flash.
Offre anche il rilevamento della versione di Flash Player. Se l'utente non ha la versione di Flash richiesta o JavaScript è disabilitato, vedrà un contenuto alternativo. Puoi anche utilizzare questa libreria per attivare un aggiornamento di Flash Player. Una volta eseguito l'aggiornamento, l'utente verrà reindirizzato alla pagina.
Un esempio dalla documentazione:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject dynamic embed - step 3</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0");
</script>
</head>
<body>
<div id="myContent">
<p>Alternative content</p>
</div>
</body>
</html>
Un buon strumento da utilizzare insieme a questo è il generatore HTML e JavaScript di SWFObject . Generalmente genera l'HTML e JavaScript necessari per incorporare Flash usando SWFObject. Viene fornito con un'interfaccia utente molto semplice per inserire i parametri.
È altamente raccomandato e molto semplice da usare.
var el = document.getElementById("my-target-element"); swfobject.embedSWF("myContent.swf", el, 300, 120, 10);
<object width="100" height="100">
<param name="movie" value="file.swf">
<embed src="file.swf" width="100" height="100">
</embed>
</object>
Questo è adatto per l'applicazione dall'ambiente root.
<object type="application/x-shockwave-flash" data="/dir/application.swf"
id="applicationID" style="margin:0 10px;width:auto;height:auto;">
<param name="movie" value="/dir/application.swf" />
<param name="wmode" value="transparent" /> <!-- Or opaque, etc. -->
<!-- ↓ Required paramter or not, depends on application -->
<param name="FlashVars" value="" />
<param name="quality" value="high" />
<param name="menu" value="false" />
</object>
È possibile aggiungere / aggiungere parametri aggiuntivi che dipendono da .swf stesso. Nessun incorporamento , solo oggetto e parametri all'interno, quindi rimane valido, funzionante e utilizzabile ovunque, non importa in che cosa sia! DOCTYPE. :)
<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/VhtIydTmOVU&hl=en&fs=1&color1=0xe1600f&color2=0xfebd01"
style="width:640px;height:480px;margin:10px 36px;">
<param name="movie" value="http://www.youtube.com/v/VhtIydTmOVU&hl=en&fs=1&color1=0xe1600f&color2=0xfebd01" />
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="wmode" value="opaque" />
<param name="quality" value="high" />
<param name="menu" value="false" />
</object>
Uso http://wiltgen.net/objecty/ , aiuta a incorporare i contenuti multimediali ed evitare il problema "fai clic per attivare" di IE.
Questo funzionerà, ne sono sicuro!
<embed src="application.swf" quality="high" pluginspage="http://www.macromedia.com/go/getfashplayer" type="application/x-shockwave-flash" width="690" height="430">
Qual è il modo migliore? Parole come "più efficiente", "rendering più veloce" e così via sono più specifiche. Ad ogni modo, sto offrendo una risposta alternativa che mi aiuta nella maggior parte dei casi (se il "migliore" è o meno irrilevante).
Risposta alternativa: utilizzare un iframe.
Cioè, ospitare il file SWF sul server. Se si inserisce il file SWF nella cartella root o public_html, il file SWF si troverà in www.YourDomain.com/YourFlashFile.swf
.
Quindi, sul tuo index.html o ovunque, collega la posizione sopra al tuo iframe e verrà visualizzata intorno ai tuoi contenuti ovunque metti il tuo iframe. Se puoi inserire un iframe lì, puoi inserire un file SWF lì. Rendi le dimensioni dell'iframe le stesse del tuo file SWF. Nell'esempio seguente, il file SWF è 500 per 500.
Pseudo codice:
<iframe src="//www.YourDomain.com/YourFlashFile.swf" width="500" height="500"></iframe>
La riga di codice HTML sopra incorporerà il tuo file SWF. Nessun altro pasticcio necessario. Pro: conforme al W3C, design della pagina intuitivo, nessun problema di velocità, approccio minimalista.
Contro: spazio bianco attorno al file SWF quando viene avviato in un browser.
Questa è una risposta alternativa. Se è la risposta "migliore" dipende dal tuo progetto.
//www...
usare //
significa che se sei su HTTPS o HTTP funziona con lo stesso tipo di connessione
So che questa è una vecchia domanda. Ma questa risposta andrà bene per il momento.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>histo2</title>
<style type="text/css" media="screen">
html, body { height:100%; background-color: #ffff99;}
body { margin:0; padding:0; overflow:hidden; }
#flashContent { width:100%; height:100%; }
</style>
</head>
<body>
<div id="flashContent">
<object type="application/x-shockwave-flash" data="histo2.swf" width="822" height="550" id="histo2" style="float: none; vertical-align:middle">
<param name="movie" value="histo2.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffff99" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
</object>
</div>
</body>
</html>
Funziona su IE, Edge, Firefox, Safari e Chrome.
<object type="application/x-shockwave-flash" data="movie.swf" width="720" height="480">
<param name="movie" value="movie.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000000" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
</object>
Questo ha funzionato per me:
<a target="_blank" href="{{ entity.link }}">
<object type="application/x-shockwave-flash" data="{{ entity.file.path }}?clickTAG={{ entity.link }}" width="120" height="600" style="visibility: visible;">
<param name="quality" value="high">
<param name="play" value="true">
<param name="LOOP" value="false">
<param name="wmode" value="transparent">
<param name="allowScriptAccess" value="true">
</object>
</a>
Usa l' <embed>
elemento:
<embed src="file.swf" width="854" height="480"></embed>
Puoi usare JavaScript se hai familiarità, in questo modo:
swfobject.embedSWF("filename.swf", "Title", "width", "height", "9.0.0");
--la 9.0.0 è la versione flash.
Oppure puoi usare il <object>
tag di HTML5.