I am trying to increment the position of an element by, say, x pixels. Here is what I’ve tried so far:
var top = document.getElementById("something").style.top;
top = top + "300px"
I know that this is not going to work, but I was wondering if it was possible to increment a position value like this.
Because
style.topis a string with units on the end of it like"300px"you can only do math with it when you convert just the numeric part to an actual number.Assuming you have a positioned element (so setting the
topvalue will do something) and you already have atopstyle set directly on the element and not set via CSS (so gettingobj.style.topwill actually get you something), you can do it by parsing the number out of the style value like this:Working example: http://jsfiddle.net/jfriend00/pt46X/