私はいくつかの列に画像を追加する小さなスクリプトを持っています。最小の列に画像を追加したいと思います。動的に追加された画像を含むdivの高さを取得する方法は?
<div id="diaporama-col1" class="col-xs-4">
</div>
<div id="diaporama-col2" class="col-xs-4">
</div>
<div id="diaporama-col3" class="col-xs-4">
</div>
:しかし、私は(イメージがまだロードされていないので、確かに)それは常に30pxを返す列の高さを取得しようとすると、
ここではいくつかのコードがあります。
var listImgDiaporama=["resources/img/img-1.jpg", "resources/img/img-2.jpg", "resources/img/img-3.jpg", "resources/img/img-4.jpg", "resources/img/img-5.jpg", "resources/img/img-6.jpg", "resources/img/img-7.jpg", "resources/img/img-8.jpg", "resources/img/img-9.jpg", "resources/img/img-10.jpg", "resources/img/img-11.jpg"];
function addImgToDiaporama() {
for (i = 0; i < listImgDiaporama.length; i++) {
var col1Height = $("#diaporama-col1").height();
var col2Height = $("#diaporama-col2").height();
var col3Height = $("#diaporama-col3").height();
if (col1Height <= col2Height && col1Height <= col3Height) {
$("#diaporama-col1").append("<img src=\"" + listImgDiaporama[i] + "\"/>")
} else if (col2Height <= col1Height && col2Height <= col3Height) {
$("#diaporama-col2").append("<img src=\"" + listImgDiaporama[i] + "\"/>")
} else {
$("#diaporama-col3").append("<img src=\"" + listImgDiaporama[i] + "\"/>")
}
}
}
この方法を使用する方法はありますか?
申し訳ありませんが、質問は私には少し不明です。 divは同じ高さです、なぜあなたは最小のcolを見る必要がありますか? – tech2017
高さに応じて画像を注文しようとしていますか? –
イメージが読み込まれるまで、イメージの高さを取得することはできません。あなたのループは、最初のループがロードされるよりもずっと前に完了します。おそらくあなたのイメージをプリロードする必要があります....それはあなたが達成しようとしていることを何でもしてください – charlietfl