2014-06-11 35 views
0

我試圖解決我的javascript/for(if語句)我試圖讓如果getElementsByid('盒')上的href其他更改風格的類「」bg保證金機頂:10px的如果和其他聲明的id和類來改變保證金

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

你是否打電話給點擊div和錨? –

+0

你沒有調用函數 – Pranav

+0

如果條件爲 –

回答

0

document.getElementsByClassName(CNAME)返回一個數組,所以你沒有做正確的事。

嘗試

document.getElementsByClassName('bg')[index].style.marginTop 

,其中指數是多少

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

+0

,你缺少右括號:( – user3725867

+0

但小提琴的作品 – Hawk

+0

再次檢查它沒有影響 – user3725867

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);