Non capisco bene come viene interpretato Javascript...
Perché questo codice
Funziona senza problemi e questocodice:<script type="text/javascript"> <!-- var imgPath = new Array(); var imgName = new Array(); var imgDidascalia = new Array(); var imgHeight = new Array(); var imgWidth = new Array(); var imgload = 'http://localhost/eclipse/Immagini//Templates/photogallery/loading.gif'; imgPath[0] = "http://localhost/eclipse/Immagini/Gallery/3.jpg"; imgName[0] = "I danni sulla Sp 13 “Coronella – Ponte Panfilia”."; imgDidascalia[0] = "I danni sulla Sp 13 “Coronella – Ponte Panfilia”."; imgWidth[0] = "450"; imgHeight[0] = "337"; --> </script> <script src="http://localhost/eclipse/Engine/JS/photogallery/cambia_immagine.js" type="text/javascript"></script>
no?codice:<script type="text/javascript"> // <!-- var imgPath = new Array(); var imgName = new Array(); var imgDidascalia = new Array(); var imgHeight = new Array(); var imgWidth = new Array(); var imgload = 'http://localhost/eclipse/Immagini/Templates/photogallery/loading.gif'; function LightboxDelegate(url,caption) { imgPath[0] = url; imgName[0] = caption; imgDidascalia[0] = ""; cambiaImage(0) } // --> </script> <script src="http://localhost/eclipse/Engine/JS/photogallery/cambia_immagine.js" type="text/javascript"></script>
In pratica la differenza tra i due codici è che il primo le variabili globali imgPath, ImgName e imgDidascalia vengono valorizzate subito, nel secondo vengono valorizzate quando viene chiamata la funzione.
Nel primo caso lo script "cambia_immagine.js" legge correttamente le variabili, nel secondo gli arrivano vuote. Eppure (pensavo che) essendo le variabili globali, le modifiche apportate dalla prima funzione vengono viste anche dalla seconda.
Bho....

Rispondi quotando
