SCOPO
In base alla presenza del plugin, inserire nella pagina un filmato o un'immagine sostitutiva
STRUMENTI
moock fpi [f.lash p.layer i.nspector] di Colin Moock | http://www.moock.org/
METODO
Scarichiamo il moock fpi (la versione con i file *.js) e decomprimiamo il contenuto del file *.zip in una cartella. Possiamo cancellare i file movie.html, noflash.html, upgrade.html, e tenere solamente movie.swf, altimage.gif, moockfpi-v1.3.5.html, e i quattro file *.js
File di esempio
MOOCKFPI-V1.3.5.HTML
La pagina moockfpi-v1.3.5.html è da rinominare in index.html: è la prima pagina che viene vista dal visitatore una volta giunto al nostro sito, e contiene tutto il codice per il plugin detect, con i relativi richiami ai files *.js esterni.
Le modifiche da fare alla pagina sono molto poche, e solo di tipo grafico: in ogni caso, non va assolutamente cambiato nulla del codice, se non la parte tra i tag <noscript>.
Ad essa può essere sostituito un contenuto alternativo per il caso in cui il browser non supporti alcun tipo di script, oppure che questi siano stati disabilitati.
Un'immagine, o appunto i tag per il refresh, vanno benissimo.
<NOSCRIPT>
<!--##############################################
HERE WE PROVIDE ALTERNATE CONTENT FOR NON-SCRIPT-SUPPORTING
BROWSERS OR BROWSERS THAT HAVE THEIR SCRIPTING TURNED OFF...
################################################
IF YOU ARE USING PAGE REDIRECT, A META REFRESH GOES HERE. FOR EXAMPLE:
<META HTTP-EQUIV="Refresh" CONTENT="10;URL=noflash.html">IF YOU ARE USING CONTENT SWAPPING, THE VALUE OF THE
alternateContent VARIABLE
SHOULD BE REPEATED HERE. FOR EXAMPLE:
<IMG SRC="altimage.gif" HEIGHT="400" WIDTH="550">
-->
</NOSCRIPT>
FPI-INIT.JS
Apriamo il file fpi-init.js, e modifichiamo solo le due righe arancioni a seconda delle nostre esigenze:
[OMISSIS]
// #############################################
// These are the user defined globals.
// Modify the following variables to customize the inspection behaviour.
var requiredVersion = 6; // Version the user needs to view site (max 6, min 2)
var useRedirect = false; // Flag indicating whether or not to load a separate
// page based on detection results. Set to true to
// load a separate page. Set to false to embed the
// movie or alternate html directly into this page.
// Only set next three vars if useRedirect is true...
var flashPage = "movie.html" // The location of the flash movie page
var noFlashPage = "noflash.html" // Page displayed if the user doesn't
// have the plugin or we can't detect it.
var upgradePage = "upgrade.html" // Page displayed if we detect an old plugin
// #############################################
[OMISSIS]
• requiredVersion: la versione del Flash player necessaria alla visualizzazione del sito
• useRedirect: va settato come false per indicare che non c'è un cambio di pagina a seconda del rilevamento, ma che tutto si svolge all'interno della pagina con il codice
Gli altri parametri possono essere ignorati.
FPI-SWAP.JS
Evidenzio le parti da modificare: il resto, a parte i parametri dei tag <object> ed <embed>, non va assolutamente toccato:
// In this section we set up the content to be placed dynamically on the page.
// Customize movie tags and alternate html content below.
if (!useRedirect) { // if dynamic embedding is turned on
if(hasRightVersion) { // if we've detected an acceptable version
var oeTags = '<OBJECT CLASSID="[...]'
+ 'WIDTH="550" HEIGHT="400"'
+ 'CODEBASE="[...]">'
+ '<PARAM NAME="MOVIE" VALUE="movie.swf">'
+ '<PARAM NAME="PLAY" VALUE="true">'
+ '<PARAM NAME="LOOP" VALUE="false">'
+ '<PARAM NAME="QUALITY" VALUE="high">'
+ '<PARAM NAME="MENU" VALUE="false">'
+ '<EMBED SRC="movie.swf"'
+ 'WIDTH="550" HEIGHT="400"'
+ 'PLAY="true"'
+ 'LOOP="false"'
+ 'QUALITY="high"'
+ 'MENU="false"'
+ 'TYPE="application/x-shockwave-flash"'
+ 'PLUGINSPAGE="[...]">'
+ '</EMBED>'
+ '</OBJECT>';
document.write(oeTags); // embed the flash movie
} else { // flash is too old or we can't detect the plugin
// NOTE: height, width are required!
var alternateContent = '<img src="altimage.gif" height="400" width="550">'
+ '<BR>any desired alternate html code goes here';
document.write(alternateContent); // insert non-flash content
}
}
Nessun'altra modifica è necessaria.
ESEMPIO