2013-09-29 55 views
0

我有一個全局對象聲明在第一行。然後使用jquery getJSON將數據填充到它中。這裏的問題是我得到功能滑塊內部的空對象,而在getJSON中它正在打印正確的數據。任何想法這裏錯了什麼?gloabl對象問題

var allslides = {}; 

$.getJSON("data/slides.json", function(data) { 
    $.each(data, function(key, val) { 
     allslides[key] = { image : val.image, title: val.title, desc:val.desc }; 
    }); 
    console.log(allslides); // First 
}); 

$(function(){ 
    slider(); 
}); 

function slider() { 
    console.log(allslides); // second 
} 
+2

因爲'getJSON'是異步 – Doorknob

+0

把你的'$ .getJSON'你'的document.ready內()'和僅在其回調函數內調用'slider()'。 – haim770

+0

是的!謝謝您的幫助! – KeshavMesta

回答

0

移動你到slider電話到您的.getJSON,因爲它是異步的:

$.getJSON("data/slides.json", function(data) { 
    $.each(data, function(key, val) { 
    allslides[key] = { image : val.image, title: val.title, desc:val.desc }; 
    }); 
    slider(); 
});