2013-02-15 33 views
0

我聲明數組作爲這樣IE7添加元素和值的JavaScript陣列

var positions = []; 

var positions = new array(); 

任一方式工作

在腳本後來的值被添加作爲這樣

positions[0].top = 0; 

一切都很好,除了IE7每一個瀏覽器得到這個錯誤

Error: Unable to set value of the property 'top': object is null or undefined 

有,我應該填充在IE7中ARRA另一種方式?

回答

1

你想javascript函數push()。你應該這樣做全面。

var positions = ["something", "somethign else"]; 
    positions.push("something new"); 

.top是最DOM元素,我相信的財產,但不適合這個數組。

0

您試圖添加對象值而不是推送到數組。如果你想使用一個數組,那麼你就需要使用.push():

var positions = []; 
    positions.push(value); 
    positions.push(value2); 

所以,在上面的代碼,value將可在positions[0]value2將可在positions[1]

不過,如果你想創建一個對象,你可以訪問像這樣:

position.top; 
position.bottom; 
etc. 

然後你需要,而不是創建一個對象:

var positions = {}; 
    positions.top = 0; 
    positions.bottom = 20;