2015-07-10 71 views
0

當用戶點擊一個下拉菜單按鈕(class .drop)時,帶有class .dropdown的div應該爲display: inline;,並且當下拉菜單按鈕被再次點擊時,該div將與class。下拉應display: none;我正在使用標誌功能來實現這個結果,但點擊時它不會做任何事情。它將在沒有國旗的情況下運作。如何使用jQuery的標誌交換CSS顯示屬性

<script> 
    $(".drop").on('click', function(){ 
     $('.dropdown').css('display', flag ? 'inline' : 'none'); 
    }); 
</script> 
+0

喜傑夫使用回撥功能,您可以請註明您的HTML呢? – TylerH

+1

創建'flag'的地方 –

+1

什麼是*「標誌特徵」*? – Phil

回答

1

可以在css()

<script> 
    $(".drop").on('click', function(){ 
     $('.dropdown').css('display', function(i,v){return v=='none' ? 'inline' : 'none' }); 
    }); 
</script> 
+0

謝謝Pranav C. Balan,這項工作和執行期望的結果,我感謝您的幫助! – Jeff

+0

@Jeff:很高興幫助 –

2

您可以使用jQuery在不同的CSS類之間切換。但是,您將需要創建兩個類。如果你在兩個不同的類之間切換,你甚至不需要跟蹤標誌特徵(我假設你是指它是否被切換)。

$(".drop").on('click', function(){ 
    $('.dropdown').toggleClass('inline none'); 
}); 
.inline { 
    display: inline; 
} 

.none { 
    display: none; 
} 

什麼.toggleClass()功能確實是特定類添加到元素,如果沒有它,如果它已經是元素的一部分,將其刪除。

+0

嘿DMLittle謝謝你的想法! – Jeff