2015-09-02 42 views
1

我創建了一個名稱空間來保存變量,以便2個不同的函數可以使用它們。我的第一個變量使用jQuery並且工作正常。第二個嘗試使用在前一行中建立的變量並失敗。它沒有定義。如何使用剛剛在名稱空間內創建的jQuery變量?

例如:

varHolder = { 
     buildStep4: $('#buildStep4'), 
     jetSpan: buildStep4.find('#jetSpan') 
    }; 

有沒有辦法做正確嗎?

+0

看來,你可以簡單地做'jetSpan:$( '#jetSpan')' –

回答

0

您可以捕捉價值,但使用功能保持它的作用域,以便在創建對象後它不存在。

varHolder = (function() { 
    var buildStep4 = $('#buildStep4'); 
    return { 
     buildStep4: buildStep4, 
     jetSpan: buildStep4.find('#jetSpan') 
    } 
})(); 

你也可以零散建立你的對象:

varHolder = {}; 
varHolder.buildStep4 = $('#buildStep4'); 
varHolder.jetSpan = varHolder.buildStep4.find('#jetSpan'); 
+0

感謝您的回答。我嘗試了零碎的方法,它的工作很好。 – user1592980

+0

@ user1592980:我很高興聽到它。如果您發現問題的答案,請「接受」答案,以便人們知道您不需要幫助。 – StriplingWarrior

0

IDS不能有效的HTML文檔中複製,從而使它毫無意義,提供上下文ID選擇,你可以簡單地做

jetSpan: $('#jetSpan') 
+0

感謝您的答覆。當然你是對的。這只是我正在構建一個頁面的應用程序,我的HTML代碼正在變長。 – user1592980

相關問題