Javascript 为什么边距不能作为数字添加到高度偏移?

Javascript 为什么边距不能作为数字添加到高度偏移?,javascript,html,margin,Javascript,Html,Margin,我使用下面的代码来获得marginTop,我发现它是8px,然后我将px替换为,它显示为8,但当我将它添加到高度偏移时,它从未工作过! 有人告诉我为什么吗 var computedStyle = window.getComputedStyle ? getComputedStyle(document.body, null) : document.body.currentStyle; var marginTop = computedStyle['marginTop'].replace('px', '

我使用下面的代码来获得marginTop,我发现它是8px,然后我将px替换为,它显示为8,但当我将它添加到高度偏移时,它从未工作过! 有人告诉我为什么吗

var computedStyle = window.getComputedStyle ? getComputedStyle(document.body, null) : document.body.currentStyle;
var marginTop = computedStyle['marginTop'].replace('px', '');
alert(marginTop);
window.scroll(0, elem.offsetTop - headerHeight + marginTop + marginTop);
marginTop包含字符串值,您可以使用字符串执行此操作:

elem.offsetTop - headerHeight + marginTop + marginTop
您需要使用parseInt将字符串转换为整数

marginTop包含字符串值,您可以使用字符串执行此操作:

elem.offsetTop - headerHeight + marginTop + marginTop

您需要使用parseInt将字符串转换为整数。

尝试将“marginTop”解析为整数并进行检查。尝试将“marginTop”解析为整数并进行检查。