2011-05-02 2 views
0

Heureusement ce forum existe, donc je vais poster une question délicate aux grands maîtres ... Je travaille sur un programme qui charge plusieurs images dans une page. Le programme fait ce qu'il suppose de faire, le problème est que je reçois un undefined error, et je n'ai aucune idée de ce qui est la cause, le programme est le suivant:Javascript Multidimensional Arrays - Erreur indéfinie

var imagesList = [['aaa','sss'], ['bbb','ttt']]; 
putImages(imagesList); 
function putImages(imagesList){ 
    var i = 0; 
    if ($(imagesList).length > 0){ 
    LoadImage(i, imagesList); 
    } 
} 

function LoadImage(i, imagesList){ 
    var ele = imagesList[i][0], 
    name = imagesList[i][1];  
    if(i < $(imagesList).length){ 
    var curr = $('<li id="pic-'+ i +'"><div>' 
         + name +'</div>').addClass("loading"); 
    $(curr).appendTo(".photos"); 
    var image = new Image(); 
    $(image).load(function(){  
     $(this).appendTo("#pic-" + i); 
     $(curr).removeClass("loading"); 
     LoadImage(i+1, imagesList); 
    }).error(function(){ 
    }).attr("src", ele); 
    } 
} 

J'ai essayé d'utiliser le conseil de ce lien JavaScript Multidimensional Arrays, mais c'est juste ce que j'essaie je continue à obtenir cette erreur dans Firefox, les autres navigateurs semblent être ok.

Merci beaucoup à l'avance.

+0

Qu'est-ce que 'imagesList'? Pourquoi le transmettez-vous à jQuery? Je suis assez sûr que Firebug vous indique dans quelle ligne vous obtenez l'erreur. Sans connaître la structure du tableau, nous ne pouvons pas vous aider. –

+0

Ow enfin, j'ai été en mesure d'éditer ma question, la structure de imageList peut être vu en haut du programme, merci beaucoup! – Kari

Répondre

0

Je ne sais pas exactement quel est le problème, mais cela peut être dû au fait que vous passez le tableau à jQuery. Il n'y a pas besoin de ça.

Au lieu de $(imagesList).length, écrivez imagesList.length.

+0

J'ai essayé celui-là, ça n'a pas marché. La bonne chose est que le programme fait toujours ce qu'il a à faire, mais je reçois toujours l'erreur indéfinie. Merci! – Kari

+0

@Kari: Mmh. Il semble que le meilleur moyen de savoir si le problème est d'installer Firebug et de parcourir le code étape par étape en regardant les valeurs des variables. –

+0

J'ai firebug, merci beaucoup pour votre recommandation de toute façon :) – Kari