martedì 13 ottobre 2009

Utilizzare lightbox con flash

Il procedimento è piuttosto semplice, il limite che trovo è quello di dover comunque scrivere, nella pagina html che embedda il flash, degli href con i collegamenti alle immagini da aprire nel lightbox.



I passi da compiere sono i seguenti:

1 - caricare nell'header della pagina html i js e il css del lightbox (non sto a spiegare come, altrimenti famo un altro post!.. :) )

2 - Inserire sempre nell'header un javascript:

< script type=" text/javascript " >
function GroupDelegate(id) {
var objLink = document.getElementById(id);
Lightbox.prototype.start(objLink);
}
< /script >

In pratica invocheremo questa funzione dal getURL in flash passandogli il nome dell'id dell'href

3 - Dovremo inserire nella pagina html, magari in fondo, ma tanto sono invisibili, dei tag < a > del tipo:

< a id="nomeID" href = " nome.jpg " rel= " lightbox[nomeGruppo] " title=" etc...">< /a >

Quindi rispetto al classico modo di utilizzare l'href nel lightbox, dobbiamo anche inserire un id che passeremo da flash

4 - Per finire, nel getURL in flash: getURL( " javascript:GroupDelegate('nomeID')" );


Come osservavo prima, secondo me il limite è quello di dover scrivere i tag a nella pagina, anche se comunque non la appesantisce perchè non carica immagini, il link è vuoto. Lavorandoci un pò su magari si potrebbe anche arrivare a centralizzare la fonte dati sia per flash che per la pagina html attraverso xml.

La soluzione sopra esposta l'ho trovata qui: http://blog.codefidelity.com/?p=18. Nella pagina potrete trovare anche altre modalità di utilizzo del lightbox con flash, per esempio per lanciare su lightbox altri swf, e così via.

A questa pagina invece ho trovato un modo diverso, a livello di funzione javascript, per interfacciare flash a lightbox: http://www.joeycollier.com/dbtstudios/news/home/blog.php?id=2&rec=19



Continua...