2011-03-09 63 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.