Показать сообщение отдельно
  #1 (permalink)  
Старый 26.04.2018, 18:59
Новичок на форуме
Отправить личное сообщение для IlCF Посмотреть профиль Найти все сообщения от IlCF
 
Регистрация: 26.04.2018
Сообщений: 3

Свойства naturalHeight(Width) равны нулю
Доброго времени суток!

Я новичок, потому прошу сильно не ругать, если "дело было не в бобине"
Имеется вот такой код:
var bgimg = new Image();
bgimg.src = 'img/'+picturesNames[currentPic]+'.jpg';
imgWidth = bgimg.naturalWidth;
imgHeight = bgimg.naturalHeight;

console.log(bgimg);
console.log(imgWidth + 'x' + imgHeight);
console.log(bgimg.naturalWidth + 'x' + bgimg.naturalHeight);

После загрузки страницы в консоли наблюдается такая картина:
https://javascript.ru/forum/attachme...d=152475765 3

При этом в самом объекте, если развернуть его свойства, naturalWidth и naturalHeight не нулевые:
https://javascript.ru/forum/attachme...d=152475765 3

Если эту же страницу перезагрузить, то всё нормализуется. Если страницу не перезагружать, а загрузить другую страницу с другим picturesNames[currentPic], а потом снова перейти на предыдущую страницу, то она тоже сработает правильно.

Бьюсь второй день, изобретать "костыли" и идти в обход не хочу, т.к. хочу понять, в чём причина ошибки. Буду признателен за помощь.

P.S. Что-то не могу разобраться, как тут картинки правильно в текст вставлять, сорри.
Изображения:
Тип файла: jpg js_1.jpg (32.7 Кб, 4 просмотров)
Тип файла: jpg js_2.jpg (71.7 Кб, 3 просмотров)
Ответить с цитированием