@Shimpanze

JavaScript: как получить для вывода в коде размеры изображения?

Добрый день!

Необходимо сконфигурировать и вернуть тег <img src="..." width="..." height="..." />.

Делаю так:

// создаю объект
var img = new Image();

// как только изображение загружено, можно прочитать его ширину и высоту
img.onload = function() {
    var width  = this.width,
        height = this.height;
};

img.src = url;


Вопрос: как мне вот здесь (за пределами этой функции img.onload = function() {...}), дождаться когда изображение точно загружено и точно получены его размеры и ТОЛЬКО ТОГДА сконфигурировать и вернуть тег <img />?

return '<img width="' + ??? width ??? + '" height="' + ??? height ??? + '" src="' + url + '"';


Что бы я не делал, получаю или «undefined» или «0». Видимо return, срабатывает быстрее чем изображение загружается.

Буду благодарен за помощь.
  • Вопрос задан
  • 299 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
как мне вот здесь (за пределами этой функции img.onload = function() {...}), дождаться когда изображение точно загружено
Но... ведь... событие load специально сделано для того, чтобы показать когда изображение загружено. Вы хотите чего-то странного.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы