2013-12-10 23 views
1
if($('.test1').hasClass('collapsed') == false){ 
$('.test1').trigger('click'); 
} 
if($('.test2').hasClass('collapsed') == false){ 
$('.test2').trigger('click'); 
} 
if($('.test3').hasClass('collapsed') == false){ 
$('.test3').trigger('click'); 
} 
if($('.test4').hasClass('collapsed') == false){ 
$('.test4').trigger('click'); 
} 
if($('.test5').hasClass('collapsed') == false){ 
$('.test5').trigger('click'); 
} 

我有共同的類測試,有沒有什麼辦法來減少這種情況,如果條件一個使用循環。循環,而不是很多,如果條件

for(...){ 
if($('.test[i]').hasClass('collapsed') == false){ 
$('.test[i]').trigger('click'); 
} 
} 

請建議。

回答

3

你爲什麼不喜歡.clickable第二類添加到這個元素?然後,你可以只是做一個

if($('.clickable').hasClass('collapsed') == false){ 
    $('.clickable').trigger('click'); 
} 

或者,包括對方的回答

$('.clickable').not('.collapsed').click() 
3

試試這個:

for(...) { 
var id = ".test" + i; 
if($(id).hasClass('collapsed') == false) { 
     $(id).trigger('click'); 
} 
} 
+2

可以擺脫'if'聲明的評論:'$(ID).filter(」崩潰。 ').click()' – elclanrs

+2

它實際上應該是'$(id).not('。collapsed')。click()'但是同樣的想法。 – elclanrs

+0

$(id).not('。collapsed')。click(),這已經足夠了,謝謝 – Prashobh