2014-09-25 76 views
0

我有幾個按鈕用作標記。我想檢查標籤是否可見,以及是否隱藏了所有標籤,然後隱藏清除選擇鏈接。 我的HTML是:CSS變化時隱藏多個元素

<div class="col-xs-12 col-sm-5 cols"> 
     <div id="tags"> 
     <button type="button" class="btn btn-default usertitle-tag hide-tag tg-btns">x &nbsp;&nbsp;Usertitle</button> 
     <button type="button" class="btn btn-default comments-tag hide-tag tg-btns">x &nbsp;&nbsp;Comments</button> 
     <button type="button" class="btn btn-default topics-tag hide-tag tg-btns">x &nbsp;&nbsp;Topics</button> 
     <button type="button" class="btn btn-default login-tag hide-tag tg-btns">x &nbsp;&nbsp;Login</button> 
    </div> 
     <a href="#" class="cancel clear">Clear selection</a> 
     </div> <!--/.col-xs-12--> 

我曾嘗試使用jQuery,但明確的選擇仍是可見的。我要去哪裏工作?

$('.hide-tag').each(function(){ 
    if ($(this).css('display') == 'none'){ 
     $(".clear").hide(); 
    } 
}); 

回答

1

您可以設置的知名度,如果至少一個hide-tag可見像

$(".clear").toggle($('.hide-tag').is(':visible')); 
0

你可以在jQuery中使用is(":visible")將返回true如果元素是可見

嘗試像

$(this).is(":visible") 
0
$('.hide-tag:visible').size() > 0 ? $(".clear").show() : $(".clear").hide(); 
0

根據您的要求,此功能將隱藏清除標籤,以防未出現任何按鈕。

檢查出來。

function checkForClearBtnDisplay() 
    { 
     clearBtnVisible=0;   //BY DEFAULT CLEAR TAG VISIBILITY SET AS FALSE 

     $('#tags button').each(function(){ 

       if($(this).is(':visible')) 
       { 
        clearBtnVisible=1; 
       }      
     }); 

     if(clearBtnVisible==0) 
     { 
      //HIDE THE CLEAR TAG IN CASE NO BUTTON IS VISIBLE 
      $('.clear').hide(); 
     } 
     else 
     { 
      $('.clear').show(); 
     } 
    } 

</script>