2012-04-04 60 views
3

我有了這個檢查是否隱藏等於真或假的jQuery

$('#div').attr("hidden", true); 

我想:

var a = $('#div').attr("hidden"); 
var b = $('#div').attr("hidden").val(); 
var c = $('#div').hidden; 
var a = $('#div').disabled; 

我只是想知道是否隱藏着是真還是假。有人知道嗎?我的研究成果都是關於形式和投入。

+1

什麼是 「隱藏」 呢?我不知道有一個div的「隱藏」屬性。 – Joseph 2012-04-04 09:21:55

+0

你想做什麼?隱藏div或在屬性中存儲值? – gdoron 2012-04-04 09:27:11

回答

9

屬性將永遠不會是true,它只能有字符串。
的jQuery有對象以外字符串data功能:

$('#div').data("hidden", true);  // set the "hidden" data 
var flag = $('#div').data("hidden"); // get the "hidden" data (true) 

如果你想隱藏div,使用.hide()

$('#div').hide(); 

你檢查,如果DIV可見與:visible \ :hidden

$('#div').is(':visible'); // Or $('#div').is(':hidden') 
+1

我建議使用數據隱藏而不是隱藏的html5兼容性,並更好地將其用於jquery.data。此外,您可以使用數字表示0(假),1(真) – Panagiotis 2012-04-04 09:23:54

+0

非常感謝那是如何做到這一點! – p0rter 2012-04-04 09:40:17

+0

@Panagiotis。您最好閱讀API網站中的'data'文檔。 – gdoron 2012-04-24 17:59:38

1

我想你意味着jQuery的visible

.is(':visible') 
1

另外,您可以使用

$('#div').toggle(showOrHide); 

其中showOrHide是假隱藏或顯示真布爾。

這是一樣的做

if (showOrHide == true) { 
    $('#div').show(); 
} else if (showOrHide == false) { 
    $('#div').hide(); 
} 

希望這有助於