come hai detto tu stessa utilizzi un altro array(didascalieArray) facendo in modo che la didascalia dell'immagine che si trova nell'array imageArray alla posizione i-esima si trovi nell'array didascalieArray alla posizione i-esima. Quando cambi immagine visualizzi la rispettiva didascalia in un div con id='didascalia'
Codice PHP:
<script language="JavaScript">
<!--
var interval = 5000;
var random_display = 0;
var imageDir = "portraits/";
var imageNum = 0;
imageArray = new Array();
didascalieArray = new Array();
imageArray[imageNum++] = new imageItem(imageDir + "01_stappert_rp.jpg");
didascalieArray[imageNum] = "didascalia immagine 1";
imageArray[imageNum++] = new imageItem(imageDir + "02_stappert_rp2.jpg");
didascalieArray[imageNum] = "didascalia immagine 2";
imageArray[imageNum++] = new imageItem(imageDir + "03_stappert_mk1.jpg");
didascalieArray[imageNum] = "didascalia immagine 3";
imageArray[imageNum++] = new imageItem(imageDir + "04_stappert_cwe.jpg");
didascalieArray[imageNum] = "didascalia immagine 4";
var totalImages = imageArray.length;
function imageItem(image_location) {
this.image_item = new Image();
this.image_item.src = image_location;
}
function get_ImageItemLocation(imageObj) {
return(imageObj.image_item.src)
}
function getNextImage() {
if (random_display) {
imageNum = randNum(0, totalImages-1);
}
else {
imageNum = (imageNum+1) % totalImages;
}
var new_image = get_ImageItemLocation(imageArray[imageNum]);
document.getElementById("didascalia").innerHTML = didascalieArray[imageNum];
return(new_image);
}
function getPrevImage() {
if(imageNum-1 < 0) {
imageNum = totalImages-1;
}
else
imageNum = (imageNum-1) % totalImages;
var new_image = get_ImageItemLocation(imageArray[imageNum]);
document.getElementById("didascalia").innerHTML = didascalieArray[imageNum];
return(new_image);
}
function prevImage(place) {
var new_image = getPrevImage();
document[place].src = new_image;
}
function switchImage(place) {
var new_image = getNextImage();
document[place].src = new_image;
var recur_call = "switchImage('"+place+"')";
timerID = setTimeout(recur_call, interval);
}
// -->