2017-10-08 461 views
0

請與同一時間同一類工作的多個div我有兩個div具有相同的類名:通過javascript函數

<div class="bubble" style="margin-bottom: 160px"> 
     <p>bubble1</p> 
    </div> 
    <div class="bubble"> 
     <p>bubble2</p> 
    </div> 
</div> 

如何申請的JavaScript,使兩者同時工作。現在只有第一個工作,第二個沒有任何反應。

+1

你想做什麼做他們* 「同時」 *? –

+0

你不能。然而事情可能會在彼此之後非常接近。 –

回答

3

在JavaScript中沒有真正的同時操作。然而,每個操作或迭代都以毫秒爲單位發生,足夠接近。你可以循環比賽。

var bubbles = document.querySelectorAll('.bubble'); // get all divs with class bubble 

[].forEach.call(bubbles, function(bubble){ 
    // do something to bubble 
}); 
0

你可以使用下面的代碼來實現你想要的。

var bubbles = document.querySelectorAll('.bubble'); 
for(var i=0; bubbles[i]; i++){ 
    var bubble = bubbles[i]; 
    // now you do whatever you want to do with bubble 
    // i.e bubble.style.marginLeft = "10px"; 
} 

或者你也可以使用jQuery來做同樣的事情。它只是一行代碼

$('.bubble').css({marginLeft:10}); 

感謝

+0

'bubbles'是'NodeList'。它沒有'forEach'方法。 –

+0

行動!感謝@AdamAzad指出問題。編輯我的代碼。雖然,你的答案看起來更優雅,然後我。 – Obie

0
var x=document.getElementsByClassName('bubble'); 

//now x is an array of all elements with the class bubble 

for(i=0;i<=x.length-1;i++){ 
    //Do operations accordingly 
}