2011-03-09 65 views
0

我正在使用Javascript來移動我的鏈接。但是當我嘗試向div的x或y值添加10個像素時出現錯誤,結果是我得到了NAN值。更新鏈接位置:添加到其x位置錯誤

這是爲什麼發生?

// This is how I get the divs x position 
var x = document.getElementById("blockID").style.left; 
x = parseInt(x, 10); 

var xPos = new Array(x+10, x+20, x+30); 
// results in xPos[0] = nan; xPos[1] = nan; xPos[2] = nan; .... 

var xPos = new Array(10, 20, 30); // this works 
// results = xPos[0] = 10; xPos[1] = 20; .... 

// PS I do set the divs x value in CSS 
blockID { z-index: 60; position: absolute; top: 26px; left: 160px; margin: 0; padding: 0; } 
+0

你是什麼'getElementByID'後'x'的價值? 'parseInt'後? – John 2011-03-09 22:11:50

回答

0

假設你的問題是嚴重的組織,使真正的代碼沒有出現在這個順序...

style.*一系列屬性映射到風格HTML文檔的屬性通過級聯計算的樣式。

如果在樣式表中設置left而不是樣式屬性,則style.left將爲undefined

獲取其風格爲每個級聯需要getComputedStyle and it's non-standard equivalents.