|
Incorporare Flash in Joomla senza violare i canoni del W3C |
|
|
|
Scritto da Arteweb
|
Esiste un certo numero di script di supporto per incorporare Flash in Joomla senza violare i canoni del W3C: in particolare swfobject.js e AC_RunActiveContent.js di Google e Adobe. Col seguente metodo nessuno di questi script di 6k-9K è necessario a meno che non siano specificamente richiesti dal Flash dell'oggetto stesso. Originariamente, swfobject.js e AC_RunActiveContent.js sono stati creati perchè Microsoft aveva annunciato che non avrebbe permesso componenti attivi in grado di inizializzare se stessi, così è stato necessario del codice esterno per avviare la riproduzione automatica.
Incorporare un filmato flash senza che siano presenti precedenti estensioni libreria in Joomla 1.5 è relativamente semplice, anche se l'oggetto stesso Flash deve ancora essere creato in uno script al di fuori del contenuto della pagina principale per il rispetto del W3C.
Perciò è necessario compiere due passaggi. In primo luogo, nel lato amministratore, aggiungere un modulo HTML personalizzato in cui si desidera che compaia il filmato flash. Poi aprire il modulo, impostare l'editor HTML per l'ingresso di codice, e inserire il seguente:
<div style="display:block;height:66px;width:162px"> <div style="display:block;height:66px;width:162px"> <div id="MyFlashCode">Loading Flash Player... <div id="MyFlashCode"> Loading Flash Player ... </div> </ Div> </div> </ Div>
Il div esterno imposta la dimensione del blocco flash per una più rapida configurazione, modificare le dimensioni di cui hai bisogno. Se si desidera moduli flash diversi su diverse pagine, è sufficiente creare più moduli Joomla e attribuire un valore diverso per la DIV (attributo "id").
Il seguente script quindi inserisce l'oggetto flash nel div interno al modulo, dopo che la pagina principale ha terminato il caricamento. In conformità al W3C, questo codice deve essere inserito nella sezione HTML HEAD, o in uno script collegato esternamente. Questo esempio è per un lettore MP3 personalizzato denominato mp3d.swf nella sottodirectory media, ma potrebbe essere qualsiasi cosa e altrove:
function addFlash(fId){ addFlash funzione (FID) ( if (document.getElementById(fId)){ if (document.getElementById (FID)) ( var loc=window.location.href + 'media/mp3d.swf'; var loc = window.location.href + 'media/mp3d.swf'; txt = '<object name="mp3d" id="'+fId+'">' txt = '<object name="mp3d" id="'+fId+'">' +'<classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ' + '<Classid = "clsid: D27CDB6E-AE6D-11cf-96B8-444553540000"' +'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" ' + 'Codebase = "http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab # version = 9,0,0,0"' +'width="160" height="64" id="'+fId+'"><param name=bgcolor value="#333333">' + 'Width = "160" height = "64" id = "' + fid +'">< param name = valore bgcolor =" # 333333 "> ' +'<param name="movie" value="' + loc + '">' + '<param Name="movie" value="' + loc +'">' +'<param name="allowfullscreen" value="true">' + '<param Name="allowFullScreen" value="true">' +'<param name="allowscriptaccess" value="always">' + '<param Name="allowScriptAccess" value="always">' +'<embed name="'+fId+'" id="'+fId+'" type="application/x-shockwave-flash" ' + '<Embed name = "' + fid + '" id = "' + fid + '" type = "application / x-shockwave-flash"' +'pluginspage="http://www.macromedia.com/go/getflashplayer" ' + 'Pluginspage = "http://www.macromedia.com/go/getflashplayer"' +'width="160" height="64" bgcolor="#333333" ' + 'Width = "160" height = "64" bgcolor = "# 333333"' +'src="' + loc + '" ' + 'Src = "' + loc + '"' +'allowfullscreen="true" allowscriptaccess="always" ' + 'Allowfullscreen = "true" allowScriptAccess = "always"' +' </embed>' + '</ Embed>' +' </object>'; + '</ Object>'; } ) document.getElementById(fId).innerHTML=txt; document.getElementById (FID). innerHTML = txt; } ) window.addEventListener('load', addFlash(MyFlashCode), FALSE); window.addEventListener ( 'load', addFlash (MyFlashCode), FALSE);
Naturalmente si vorranno modificare i parametri per la propria applicazione, ma queste non verranno supportate da Flash senza ulteriori librerie esterne. Se si dispone di moduli flash multipli su diverse pagine, allora includere una funzione separata JavaScript con un ID diverso per ognuno. Poichè l'oggetto Flash viene inserito nella pagina dopo il caricamento, la tecnica è completamente compatibile con la XHMTL 1.0 Transitional DTD. Testato con esito positivo su Internet Explorer 7, Safari 3.2.1, Firefox 3.0.7, Konqueror 4.2.1, 9.6.4 Opera, Avant 11,7, e Google Chrome 1.0.154. 28.  Spedizione gratuita possibile (vedi pagina prodotto)
Spedizione gratuita possibile (vedi pagina prodotto)
Spedizione gratuita possibile (vedi pagina prodotto) |
Aggiungi commento
|
|