我试图修复我的javascript / for(if语句)我试图制作如果getElementsByid(' box')on href else改变了类"" bg到margin的样式-top:10px
HTML代码
<a href="#" id="box">click</a>
<div class="bg">Test</div>
<style>
.bg{
margin-top:100px;
}
</style>
脚本
function Element(id) {
if( document.getElementById('box') {
document.getElementById('box').style.display = 'block';
} else {
document.getElementsByClassName('bg').style.marginTop:'10px';
} }
答案 0 :(得分:0)
document.getElementsByClassName(cname)返回一个数组,这样你就没有做正确的事。
试
document.getElementsByClassName('bg')[index].style.marginTop
其中index是数字
<强> HTML 强>
<a href="#" id="box">click</a>
<div class="bg">Test</div>
<强> JAVASCRIPT 强>
function element(id, index){
if( index === null ){
document.getElementById(id).style.display = 'block';
}else{
document.getElementsByClassName(id)[index].style.marginTop = '10px';
}
}
element('bg', 0);
<强> Fiddle to answer here 强>
答案 1 :(得分:0)
不幸的是我不能评论帖子,所以我只想注意@Hawk的帖子。 'bg'不是ID,而是一个类。所以我猜正确的方法是
function element(id, elClass, index){
if( index === null ){
document.getElementById(id).style.display = 'block';
}else{
document.getElementsByClassName(elClass)[index].style.marginTop = '10px';
}
}
element('box', 'bg', 0);