簡體   English   中英

jQuery - >檢查元素的可見性

[英]jQuery -> check the visibility of an element

我有一個div元素,將在很多地方顯示/隱藏。 如果我這樣做有可能嗎?

$("#divtobetracked").hide();

或者a

$("#divtobetracked").show();

另一個動作被解雇了? 因為如果元素的.hide(),也應隱藏按鈕,並且如果元素將被顯示,則還應顯示一個按鈕。

所以,我想我可以編寫一個切換和執行我想要的功能的函數,如果我想顯示/隱藏元素,我會調用該函數。

但是,還有另一種可能嗎,某事。 喜歡.live()事件?

最好的祝福。

閱讀這個討論...它會幫助你......
檢查元素的可見性

並嘗試這個...

if(  $(element).is(":visible") == "true" ){  // do something }

else{ // do something else<br> }

不,那不存在。 您可以編寫一個函數,就像您提到的那樣,或者您可以像這樣擴展jquery(另請參閱http://docs.jquery.com/Plugins/Authoring ):

(function( $ ) {

  $.fn.hideMe = function() {
     this.hide();  

     this.each(function() {
         // Do more stuff here.
     });

     // Maybe even:
     this.trigger('hideMe.hidden');
  };
})( jQuery );

然后用舊的.hide()調用替換:

$('#divtobetracked').hideMe();

而且,如果您還包含“觸發”調用,您現在可以執行以下操作:

$('#divtobetracked').bind('hideMe.hidden', function() {
    // do some specific stuff for this div here, like:
    $('#somebutton').hide();
});

另見: http//api.jquery.com/trigger/


或者,如果你真正想做的就是同時隱藏一個div和一個按鈕,只需給它們相同的類:

<div id='#divtobetracked' class='hide-me'></div>
<button id='#somebutton' class='hide-me'></button>

接着

$('.hide-me').hide();

您可以使用.hide()和.show()的回調參數來調用.trigger()。 請參閱http://api.jquery.com/hide/http://api.jquery.com/trigger/

$($('#divtobetracked').bind('hideandshow', function() {
  alert('divtobetracked was hidden or shown');
});
$("#divtobetracked").hide(function () {
  $("#divtobetracked").trigger('hideandshow');
});
$("#divtobetracked").toggle();

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM