在我的简单代码中,我试图获取某个图像的marginLeft,但它会警告" undefined"而不是300,它应该提醒(css中的边距为300)
这是我的代码,谢谢
var Left = document.getElementById("Shot").style.marginLeft;
var ParsedLeft = parseInt(Left)
alert(ParsedLeft)
答案 0 :(得分:1)
以您尝试的方式获取样式仅适用于内联CSS。对于通过样式表设置的CSS,请使用getComputedStyle:
var Left = window.getComputedStyle(document.getElementById("Shot"));
console.log(Left.marginLeft)
<强> jsFiddle example 强>
答案 1 :(得分:0)
如果您只想要没有“px”或“em”的号码,您可以这样做:
var el = document.getElementById('Shot');
var style = window.getComputedStyle(el);
var left = style.getPropertyValue('margin-left');
left = left.substring(0, left.length - 2);
console.log(left);
您尝试这样做的方式是内联CSS。