Dunque, ho un problemuccio che - ho visto - non è soltanto mio...
in buona sostanza, ho una pagina con due diversi div, nei quali carico contenuti diversi attraverso una chiamata AJAX ad una pagina PHP (in base alla variabile inviata tramite AJAX, la pagina PHP invia i contenuti richiesti).
Il mio problema è che, in alcuni casi, i contenuti che vengono caricati contengono una serie di miniature, cliccando le quali si dovrebbe visualizzare l'immagine grande tramite l'effetto LightBox. Però, caricando questi link attraverso la chiamata AJAX, la relativa funzione JS non va...
Effettuando un ricerca nel forum, ho trovato che qualcuno ha risolto facendo in modo di ri-inizializzare la funzione contestualmente al caricamento dei nuovi contenuti.
Ho quindi provato a fare così:
Ovvero, ho aggiunto alla funzione AJAX che carica i contenuti nel div la riga el3.initLightbox();, e che dovrebbe - appunto - re-inizializzare la funzione LightBox.Codice PHP:
function handleResponse() {
if (http.readyState == 4) {
var response = http.responseText;
var splitString = response.split("#####")
var text1 = splitString[0];
var text2 = splitString[1];
var text3 = splitString[2];
var text4 = splitString[3];
var text5 = splitString[4];
var text6 = splitString[5];
var el = document.getElementById("row1");
el.innerHTML = text1;
el.scrollTop=0;
var el3 = document.getElementById("dynPage6");
el3.innerHTML = text3;
el3.scrollTop=0;
el3.initLightbox();
....
} }
Però non funge!...
![]()
Come posso risolvere questo problema?
![]()
![]()