2012-08-03 113 views
0

我正在研究代碼,也許我的方法在「for」循環內工作是錯誤的。下面是它:jQuery動態命名變量

for(var index = 0; index < $('div.parent').find('div.child').length; index++){ 
    var element[index] = $('div.parent').find('div.child').eq(index); 
    // some code 
} 

的代碼應該是這樣的:

for(var index = 0; index < $('div.parent').find('div.child').length; index++){ 
    var element1 = $('div.parent').find('div.child').eq(1); 
    // some code with element1 
    var element2 = $('div.parent').find('div.child').eq(2); 
    // some code with element2 
} 

感謝您的任何建議。

+2

什麼是你的問題或問題?你發佈了兩個不同的代碼,這兩個代碼效率非常低,可以做不同的事情。 – jfriend00 2012-08-03 06:52:18

+0

你爲什麼試圖收集這樣的元素? jQuery對象可能更有用。 – nbrooks 2012-08-03 06:55:12

+0

我不是一個編碼員,我問是否可能。我不知道你爲什麼必須投下我的問題。 – thednp 2012-08-03 06:56:07

回答

1

您不能動態創建某個特定名稱的變量。您將需要使用數組:

var elements = []; 
var children = $('div.parent').find('div.child'); 
for(var index = 0; index < children.length; index++){ 
    elements.push(children.eq(index)); 
    // some code 
} 

//reference by: 
elements[0]; 
elements[1]; 
// etc. 

或者也可以簡單使用jQuery:

var elements = $('div.parent').find('div.child').toArray(); 
+0

感謝您的回覆。我希望你沒有投下我的問題,我只是不是一個編碼員,我希望你的回覆能幫助其他人。我會試一試。 – thednp 2012-08-03 07:04:14

+0

沒問題,如果你沒有太多經驗,這是一個公平的問題。試一試,讓我知道你有什麼不明白的地方,很樂意幫忙。 – nbrooks 2012-08-03 07:10:13

+0

那太好了。我主要做一些簡單的事情,只是學習循環和東西。所以我相信這一切都會奏效,就像你一直在處理這些驚人的人物時一樣。 – thednp 2012-08-03 07:13:47