2014-10-08 2 views
0

Я пытаюсь заполнить div изображениями и по размеру изображений, чтобы они находились прямо на их месте. Проблема в том, что когда изображение не загружено, размеры x, y не могут быть выбраны из элемента. Это то, что я пытаюсь сделать после просмотра некоторых примеров переполнения стека. Это не работает ...Функция пожара после загрузки каждого изображения

$.each(data.data.children, function(i,item){ 
     // Some images come in with a busted link. Hence the IF statement... 
     if (item.data.url.indexOf(".jpg")>0){ 
      var imgTitle = item.data.title; 
      imgTitle = imgTitle; 
      $('<div id="c'+i+'"></div>').attr("class", "imgDiv").appendTo("#photos"); 
      $("<img/>").attr("src", item.data.url).attr("id", "pic"+i).attr("class", "pics").appendTo("#c"+i); 
       .load(function(){ 
        $(this).fadein("slow"); 
        if (iWidth>iHeight){ 
         $('#pic'+i).width(270); 
         $('#pic'+i).height(parseInt(270-imgTitle.length/3)); 
        } 
       }); 

      $("<p>"+imgTitle+"</p>").attr("id", "p"+i).appendTo("#c"+i); 
      $("<img/>").attr("src", "images/RedX2.png").attr("class", "xit").appendTo("#c"+i); 

      var mImg = $('#pic'+i)[0]; 
     } 
    }); 

В качестве альтернативы, существует ли способ пропорционального подгонки изображения внутри прокладки пропорционально?

ТИА

DK

enter image description here

+0

Вы можете получить HTML-код или пример того, что вы хотите достичь? –

+1

Знаете ли вы аспект всех изображений или он отличается? –

+0

Изображения всех размеров. Они могут быть 1920x1080, или они могут быть 300x500 ... любая форма, которую можно вообразить ... – DeKoss

ответ

2

Вы, возможно, не нуждается в JavaScript на всех. См. Это сообщение, чтобы использовать CSS для автоматического увеличения изображения в div, который его содержит.

How do I auto-resize an image to fit a div container

+0

Это очень многообещающий ... – DeKoss

+0

не использовать максимальную высоту. – Zack

+0

Фактически, используя как максимальную высоту, так и максимальную ширину вместе и удаляя высоту, сделал это. – DeKoss

Смежные вопросы