Aprire il popup di Lightbox al caricamento della pagina
scritto da Massimo il 14 Marzo 2009 alle 12:03
archiviato in Web
archiviato in Web
Dalla documentazione di Lightbox non è indicato un modo per poter agganciare all'evento
Cerando per il web si trovano però delle scappatoie (più precisamente qui), che consistono in:3. Richiamare la funzione di cui sopra nell'evento
Fattibile in diversi modi, il primo:
onload la visualizzazione di una determinata immagine, solo il modo di legare un collegamento ad un'immagine a Lightbox.
Cerando per il web si trovano però delle scappatoie (più precisamente qui), che consistono in:
1. Modificare lightbox.js
Necessario solo per la versione 2.0.4, trattasi semplicemente di sostituire l'ultima riga del file in:document.observe('dom:loaded', function () { myLightbox = new Lightbox(); });
2. Creare la funzione per la visualizzazione dell'immagine
function showChart() { myLightbox.start($('lightbox-chart')); }
Dove lightbox-chart sarà l'id del tag <a>.
3. Richiamare la funzione di cui sopra nell'evento onload
Fattibile in diversi modi, il primo:
Event.observe(window, 'load', showChart, false);Oppure (come l'ho usato io):
window.onload = function() { loadChart(); }
function loadChart() {
var xmlhttp = ajaxRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
[...]
showChart();
}
};
xmlhttp.open('GET', '/images/query-chart.php?id_monitor=5&id_query=12&id=c4aff248d04618fbbfd8e79309a344b1&at=1237025350');
xmlhttp.send(null);
}

6 Commenti
Scusa, ma essendo MOLTO principiante, non riesco a capire bene come usare i codici.
Ho provato lightbox nel modo canonico e funziona.
Ma non riesco a farlo aprire al caricamento della pagina.
Avevo tentato anche con un altro metodo trovato sul web (http://www.webdesignerforum.co.uk/index.php?showtopic=13520) ma funziona solo su SAFARI.
Modificando il codice come dici tu nel punto 1. mi si apre il popup molto in basso a sinistra della finestra. Gli altri metodi non so come inserirli.
Grazie della pazienza
Fra
<script type="text/javascript"><!--
Event.observe(window, 'load', showChart, false);
//--></script>
Ciao.
Su firefox non si carica....
Su IE non ho ancora guardato, dato che lavoro su MAC
Verifica nella console che non ci siano errori (Strumenti > Console degli errori), prima fai uno Svuota e poi carica la pagina con il Lightbox. Vedi se ti torna particolari errori.
Ciao
C'era un errore nel codice che ho modificato....era stata disattivata una funzione e dava errore!
Ci sono altro due errori che però sembrano ininfluenti:
uno nel tuo codice....
<script type="text/javascript"><!--
Event.observe(window, 'load', showChart, false);
//--></script>
mi dice Errore:showChart is not defined
e uno nell'ultima riga di codice
addLoadEvent(function(){ window.setTimeout(function(){$("a1").onclick();},1)});
mi dice Errore: $("a1") is null
function showChart() { myLightbox.start($('lightbox-chart')); }
Dove lightbox-chart è l'id dell'elemento che devi visualizzare (<img src="immagine.jpg" id="lightbox-chart" />)
Ciao
Commenta