2013-06-03 39 views
2

我想改变页眉上的填充位置,使其有效地放在页面上。我有运行,什么也不做下面的代码:用javascript改变CSS问题

function openPage() { 
    var i, el = document.getElementById('headbar'); 
    for(i=0;i<30;i++) { 
     el.style.paddingTop = el.style.paddingTop + 1; 
    } 
} 

然而,尽管试图找出为什么没有在控制台工作,我想通了,也许是因为填充必须以像素为单位写,因为下面的作品,并改变在控制台填充:

document.getElementById('headbar').style.paddingTop='100px'; 

有什么办法,我可以做到这一点没有jQuery和无需作出子和reconcatonating?

+0

你可以写你自己的价值正常化,但除此之外,你必须Concat的字符串。所有艰难的那不是世界末日真的 –

回答

2

尝试追加px给变量

var fontSize = parseInt(el.style.paddingTop, 10); 
el.style.paddingTop = ((!isNaN(fontSize) : fontSize : 0) + 1) + 'px'; 
+0

这应该从我所了解的工作,但最终没有做任何事情。嗯。 –

+0

@ user2449330。检查编辑的代码 –

2

很简单只是这样做:

for(i=0;i<30;i++) { 
    var px = (el.style.paddingTop + 1) + "px"; 
    el.style.paddingTop = px; 
} 
+0

我看到你在这里做什么,但el.style.paddingTop必须返回null,因为填充设置为1px –