1

jquery json parseから画像サイズを取得する方法は? を入れてeach function、最初にすべての画像をhtml部分にダウンロードしてから、width()&height()を画像サイズに使用しようとしましたが、取得時に問題が発生しwidth()height()画像の読み込みが進んでいます。

http://jsfiddle.net/7eLj4/のサンプルコード

jQuery コード:

$(document).ready(function(){
    var data = '[{"image":"http:\/\/pcdn.500px.net\/6269271\/a85b2995b4d80748831492be5e8a3689895a2b0e\/4.jpg"},{"image":"http:\/\/pcdn.500px.net\/5953805\/d0dd841969187f47e8ad9157713949b4b95b3bda\/4.jpg"},{"image":"http:\/\/pcdn.500px.net\/5735750\/0dd26cb9f53b7bbbedf1b65c0d0aac013f77466c\/4.jpg"}]';
    var obj = $.parseJSON(data);
    $.each(obj, function(index,item) {
       $('#imagewrap').append('<img class="images" src="'+item.image+'" />');         
    });
    $('.images').each(function(){
        var width = $(this).width();
        var height = $(this).height();
        var imgsrc = $(this).attr('src');
        alert(width+''+height+''+imgsrc);           
    });   
});​

HTML コード:

<div id="imagewrap"></div>
4

2 に答える 2

0

各画像の関数から、画像の.width()andにアクセスする関数を呼び出します。イメージのダウンロードが完了した後に呼び出されます。.height()onloadonload

myImage.onload = function() {
    var accurateWidth = myImage.width();
}
于 2012-04-07T23:28:36.700 に答える
0

画像読み込みイベントにバインドします。

$('.images').bind('load', function () {
  // do something here
});

実演するために更新されたフィドルは次のとおりです。http://jsfiddle.net/7eLj4/5/

于 2012-04-07T23:28:39.453 に答える