要素が0に設定されてheight
いる場合、要素のattrのcss値を取得することは可能ですか?max-height
onclick を表示する要素のピクセル数を知るためにこれが必要です。すべての要素の高さはブラウザーのサイズによって変化するため、css ファイルから高さの値を取得したいと考えています。
要素が0に設定されてheight
いる場合、要素のattrのcss値を取得することは可能ですか?max-height
onclick を表示する要素のピクセル数を知るためにこれが必要です。すべての要素の高さはブラウザーのサイズによって変化するため、css ファイルから高さの値を取得したいと考えています。
私の最初の質問は、なぜmax-height: 0;
他に使えるものがあるのですか?hide()
show()
どちらを使うかのようにdisplay: none
私ができる唯一のことは、max-height css を削除して高さを取得してから、max-height を再適用することです。
$('.div').css('max-height', 'none')
console.log($('.div').height())
$('.div').css('max-height', '0')
これは、要素が表示されないほど速く発生するはずですが、 with を削除する前に非表示にすることをお勧めしますmax-height
。
$('.div').hide()
$('.div').css('max-height', 'none')
console.log($('.div').height())
$('.div').css('max-height', '0')
$('.div').show()
$('.div').each(function(){
var t=$(this); // Cache jQuery reference
t.css('max-height','none'); // Temporarily override max-height
t.data('height',t.height()); // Store height in data
t.css('max-height',''); // Remove our max-height override
});
alert($('.div').data('height'));
jsfiddle: http://jsfiddle.net/AqAJc/7/
CSS の最大高さはそのままにしておきます。高さを変数にキャッシュします。max-height
次に、を 0 に追加します。
$(function(){
var divHeight = $('.div').height();
$('.div').css('max-height', '0');
alert(divHeight);
});