2013-10-02 83 views
-1

我在與下面的代碼位的問題(我省略不相關的行):從Javascript中的嵌套函數引用對象成員?

var audios = function(url){ 
    this.loaded = false; 
    req.onload = function() { 
     this.loaded = true; 
    } 
} 

this.loaded沒有被更新爲真時,XHR負載的對象構件。它肯定會進入onload函數。我想我沒有正確引用它,但我無法弄清楚如何。任何幫助將是偉大的,謝謝。

+1

你試圖在回調執行前訪問它嗎? –

+0

可能重複的[如何從AJAX調用返回響應?](http://stackoverflow.com/questions/14220321/how-to-return-the-response-from-an-ajax-call) –

+0

我創建全局範圍內的'audios'實例,並重複檢查它的加載狀態,直到它爲真。 – mattomatto

回答

1

在您的代碼中,第二個this指的是req。試試這個:

var audios = function(url){ 
    var me = this; 
    this.loaded = false; 
    req.onload = function() { 
     me.loaded = true; 
    } 
} 
+0

正是我之後,非常感謝你! – mattomatto