2016-07-18 6 views
3

ich versuche, die Größe eines im <window> durch Überprüfung der Breite und Höhe des Containers zu erhalten.Wie erhält man die Höhe eines Div, nachdem der Inhalt geladen wurde?

Ich habe .load() verwendet, um zu warten, bis die <img> geladen ist.

Auf Pageload ist die Größe noch 0.

erhalte ich nur die richtige Höhe auf Größe ändern.

Was ist hier falsch?

EDIT: die richtige Größe i .contents() hinzugefügt

$(document).ready(function(){ 
    $('img').load(function(){ 
     function size(){ 
      var height = $('#size').contents()height(); 
      var width = $('#size').contents().width(); 
      $('#size').find('p.size').remove(); 
      $('#size').append('<p class="size">' + height + '-' + width + '</p>'); 
     }; 
     $(window).load(size); 
     $(window).resize(size); 
    }); 
}); 

Antwort

3

Sie eine Funktion definieren, zu bekommen, aber Sie es nicht

Ort size(); nach $(window).resize(size);

EDIT aufzurufen: ganze Code mit einige Verbesserungen

$(document).ready(function(){ 
    function size(){ 
     var height = $('#size').height(); 
     var width = $('#size').width(); 
     $('#size').find('p.size').remove(); 
     $('#size').append('<p class="size">' + height + '-' + width + '</p>'); 
    } 

    $(window).load(size); 
    $(window).resize(size); 
    $('img').load(size); 
}); 
+0

es gehts ich navoked ... $ (window) .load (size); – Gregor

+0

@Gregor, aber beide Ereignisse werden ausgelöst, bevor die AJAX-Anforderung abgeschlossen wird. Sie müssen auch die Funktion direkt im Callback aufrufen, wie pwolaq schlägt –

+0

ja, auf Fenstergröße wie angegeben - wenn Sie es nach dem Laden aufrufen möchten, legen Sie den Code oben wie ich vorgeschlagen – pwolaq

Verwandte Themen