只是想知道如何判斷一個jQuery的聲明這樣確定CSS屬性是否爲某個值?
if($("#test").css('display', 'block') == true) {
return true;
}
基本上,我希望能夠確定如果一個元素當前顯示或通過隱藏「顯示:塊」屬性?
只是想知道如何判斷一個jQuery的聲明這樣確定CSS屬性是否爲某個值?
if($("#test").css('display', 'block') == true) {
return true;
}
基本上,我希望能夠確定如果一個元素當前顯示或通過隱藏「顯示:塊」屬性?
使用
if($("#test").css('display') == 'block') {
我相當肯定.css()
,返回一個計算值,總是返回小寫的結果 - 文檔說這個沒什麼。爲了完全確定,你可以做一個
if($("#test").css('display').toLowerCase() == 'block') {
,而你可以依靠display
給予可靠的結果,注意一些CSS屬性不會總是出現,他們被定義的方式。例如使用.css()
查詢時
a { color: red }
會變成rgb(255,0,0);
。
我想對此進行測試的唯一方法是通過與實際值進行比較:
function displayHidden(elem) {
return $(elem).css('display') === 'hidden';
}
您可以使用可見性,也隱藏
if ($('#test').is(':visible')){
如果能見度是你想要確定的,這實際上會更好,+1 – 2011-05-08 17:10:03
嗨佩卡 - 只是想知道爲什麼不工作? http://jsfiddle.net/eEF9Y/ – Tom 2011-05-08 17:47:32
@你正在檢查'test1'是否有'display:none',它沒有。你的意思是'display!='block''? – 2011-05-08 17:49:02
@Pekka - 感謝您的迴應:)那麼,我想檢查#test是否是塊 - 如果它是塊然後顯示test1? – Tom 2011-05-08 17:49:53