На рабочей демке размеры картинок берутся и src, а на не рабочей нужно дождаться загрузки картинки, перед тем как брать размеры из image.naturalHeight
. Плюс ко всему document.querySelector
выбирает первый попавшийся элемент, а не тот который бы создан последним