JQuery
JQuery e Prototype insieme
Mi sono trovato a dover risolvere un problema con LightWindow. La libreria in questione utilizza Prototype. L’ho utilizzata perchè supporta praticamente ogni tipo di media, dalle semplici gallerie di immagini ai video in flash alle pagine esterne eccetera. Sono anche riuscito a farci andare Google Maps. Il problema è che mi è stato segnalato che, purtroppo, su Internet Explorer (sia il 6 che il 7), la gestione delle immagini ha qualche problema. In particolare, se non si fa caricare completamente la libreria e si tenta di farla funzionare, invece di comportarsi come un semplice link (e in questo caso il link farebbe aprire l’immagine), parte l’apertura della modal window ma quando arriva il momento di ridimensionare sia la modal window sia l’immagine, queste vengono lasciate di piccole dimensioni.
Ovviamente il problema non è di facile soluzione, quindi mi sono guardato intorno ed ho trovato ThickBox, una libreria che utilizza JQuery, molto semplice. Ammetto di non averci smanettato più di tanto, fatto sta che non ho idea se ThickBox supporti anche i video flash o meno, quindi sono passato subito a cercare di far convivere JQuery e Prototype, lasciando LightWindow per Google Maps e video in flash, e usando ThickBox per le gallerie di immagini.
Dopo aver sbattuto la testa qualche minuto per mettere d’accordo Prototype e JQuery mi sono affidato a Google, trovando subito la soluzione a questo indirizzo: http://www.davidesalerno.net/jquery-e-prototype-librerie-in-conflitto/.
Mi è bastato quindi importare JQuery, definire la funzione JQ(), assegnandole il valore di $(), e successivamente importare Prototype. Ovviamente i riferimenti a $() all’interno di ThickBox li ho dovuti cambiare facendoli puntare a JQ(). Ringrazio vivamente l’autore del post linkato perchè mi ha permesso di risolvere in poco tempo la questione.