jQueryでは、要素が表示されていないwidth()
場合は0を返すようです。アコーディオンを削除すると、高さが正しく報告されます。画像をdivでラップし、divの表示をブロックに設定しようとしましたが、これも機能しませんでした。アコーディオンを適用したときに画像の元のサイズを見つけるための代替手段はありますか?
<div id="accordion">
<h3>Click me</h3>
<div>
<div class="bg">
<img src="your_img_url">
</div>
</div>
<h3>Click me</h3>
<div>
<div class="bg">
<img src="your_img_url"/>
</div>
</div>
</div>
$(document).ready(function() {
$('#accordion').accordion({
autoHeight: false,
collapsible: true,
});
$("img").load(function() {
alert($(this).height());
alert($(this).width());
});
});