在JavaScript中检索CSS属性,然后对其进行修改

时间:2015-11-12 17:46:26

标签: javascript css

如何检索元素的CSS属性(例如margin-left),然后可以向其添加一些值,并使用更新的值更改元素。

假设:

var element = document.getElementById("myElement");
var value = element.style.margin-left;

//How to do something like this?
var updatedValue = value + 10;
element.style.margin-left = updatedValue;

因为,style.margin-left接受以像素为单位的值。如何检索当前值,然后向其中添加内容,然后使用相同的内容更新元素? 谢谢。

1 个答案:

答案 0 :(得分:7)

只需使用parseIntparseFloat将字符串转换为数字,然后重新应用px

var value = parseInt(element.style.marginLeft);
element.style.marginLeft = (value + 10) + 'px';

注意:这适用于其他单位,例如em%等。

评论中的每个@ScottKaye,如果样式是通过样式表而不是DOM元素的getComputedStyle属性应用的,那么这是使用style的示例:

var value = parseInt( window.getComputedStyle(element).marginLeft );
element.style.marginLeft = (value + 10) + 'px';