親要素の幅、特にテーブルにある画像に合わせて画像を拡大/縮小しようとしています。親の幅に合わせて画像のサイズを変更するjQuery
問題は、ブラウザとプラットフォームによって、親要素の幅を決定する際の動作が異なるように見えることです。
だから私は$(document).ready
で親td要素の幅を取得しようとしました:
$('td').each(function() {
var width = $(this).width();
$(this).width(width);
});
そして(画像をロードする必要があります)
$(window).load
に私はに応じて、画像の幅を設定しようtdの幅CSSスタイル:
var parentWidth = $(this).parent().width();
if ($(this).closest('td')) {
parentWidth = $(this).closest('td').css('width').replace('px', '');
}
しかし、これは信頼できないようです。ときどき動作し、一部のブラウザでは動作しますが、時には悲惨に失敗し、td
の幅に間違った値を与えます。
画像がロードされる前に、画像を拡大すると画像の幅が歪まないように、td
の幅を取得したいと考えています。
もちろん、IE8以降ではmax-widthとmax-heightはサポートされていないが、そうでない場合は必要ありませんでした。
イメージを読み込む前に、これを行い親の幅を取得するにはどうすればよいですか?
BTW:td
は、100%幅のテーブルで開始する幅のパーセント値を持つことができます。
あなたはそうです、それは問題の一部でした。ありがとう。 – Anders