使用JavaScript增加顶部/左侧/底部/右侧值

day*_*ay0 17 javascript css

我试图通过x像素增加元素的位置.这是我到目前为止所尝试的:

var top = document.getElementById("something").style.top;
top = top + "300px"
Run Code Online (Sandbox Code Playgroud)

我知道这不会起作用,但我想知道是否有可能增加这样的位置值.

jfr*_*d00 15

因为style.top是一个字符串,其末尾有单位,就像"300px"只能将数字部分转换为实际数字时才能使用它.

假设你有一个定位元素(所以设置top值会做一些事情)并且你已经top在元素上直接设置了样式而没有通过CSS设置(所以obj.style.top实际上会得到你的东西),你可以通过解析数字来实现像这样的样式值:

var obj = document.getElementById("something");
var topVal = parseInt(obj.style.top, 10);
obj.style.top = (topVal + 300) + "px";
Run Code Online (Sandbox Code Playgroud)

工作示例:http://jsfiddle.net/jfriend00/pt46X/