2011-05-02 31 views
0

幸運的是,這個論壇的存在,所以我張貼棘手的問題,以大師...... 我就在一個頁面加載多個圖像的程序工作去了。 程序做的事情該做,問題是,我得到了undefined error,我沒有任何想法的原因是什麼,程序如下:的JavaScript多維數組 - 未定義的錯誤

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); 
    } 
} 

我試圖用從這個鏈接JavaScript Multidimensional Arrays的建議,但它只是我試過我一直在Firefox中得到這個錯誤,其他瀏覽器似乎沒問題。

非常感謝。

+0

什麼是'imagesList'?你爲什麼把它傳遞給jQuery?我很確定Firebug告訴你在哪一行你會得到錯誤。不知道數組的結構,我們無法幫助你。 – 2011-05-02 10:14:03

+0

終於我能夠編輯我的問題了,imageList的結構可以在程序的頂部看到,非常感謝! – Kari 2011-05-02 10:25:07

回答

0

我不知道確切的問題是什麼,但它可能與您傳遞數組jQuery的事實。沒有必要那樣。

相反的$(imagesList).length,寫imagesList.length

+0

我試過那個,它沒有工作。好的是,該程序仍在做它必須做的事情,但我仍然得到未定義的錯誤。謝謝! – Kari 2011-05-02 10:42:54

+0

@Kari:Mmh。似乎找出問題的最好方法是安裝Firebug並逐步查看代碼中的變量值。 – 2011-05-02 10:56:26

+0

我有螢火蟲,非常感謝您的建議:) – Kari 2011-05-02 10:57:35