Futuraweb, extend you brand online

Per poter visualizzare un oggetto flash con alcuni browser non-IE (Mozilla, Firefox, etc..) si deve ricorrere al tag “embed”. Il problema nasce nel momento in cui vogliamo inserire l’oggetto flash in una pagina XHTML dato che il tag in questione non e` considerato valido. Vediamo un paio di metodi per superare questo ostacolo.

Il primo metodo e` semplice: rimuoviamo il tag <embed>!

Per poter continuare a visualizzare il flash in tutti i browser dobbiamo modificare il codice in questo modo:

<object type="application/x-shockwave-flash"
	data="filmato.swf" width="400" height="300">
<param name="wmode" value="transparent" />
</object>

In questo articolo trovate tutti i dettagli di questa tecnica ed un piccolo trucchetto per superare i limiti e problemi

http://www.alistapart.com/articles/flashsatay/

Un altro stratagemma e` quello di utilizzare Javascript; l’idea e` di creare una funzione che generi lato client il codice dell’oggetto flash. Creiamo un file flash.js con la funzione FlashCodeGenerator:

function FlashCodeGenerator(percorso, width, height, id)
{
	document.write("<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"
		codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\"
		id=\""+id+"\" width=\""+width+"\" height=\""+height+"\">");
	document.write("<param name=\"movie\" value=\""+percorso+"\">");
	document.write("<param name=\"menu\" value=\"false\">");
	document.write("<param name=\"quality\" value=\"high\">");
	document.write("<param name=\"scale\">");
	document.write("<param name=\"bgcolor\" value=\"#ffffff\">");
	document.write("<embed src=\""+percorso+"\" menu=\"false\" quality=\"high\" scale=\"noborder\"
		bgcolor=\"#ffffff\" width="+width+" height="+height+" type=\"application/x-shockwave-flash\"
		pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\">");
	document.write("</embed>");
	document.write("</object>");
}

Nella pagina XHTML includiamo flash.js nel tag <head>

<script language="JavaScript1.2" src="flash.js" type="text/javascript"></script>

e possiamo richiamare la funzione nel seguente modo:

<script language='JavaScript1.2' type='text/javascript'>
FlashCodeGenerator('percorso del file‘,’larghezza‘,’altezza‘,’ID dell’oggetto‘);
</script>

Leave a Reply