Столкнулся с такой же проблемой.
Фоторама находилась в модальном окне, которое
display: none;
При этом, сама фоторама инициализировалась, но до .data было не достучаться.
fotoramaInit: function () {
this.fotorama_init = this.texture_collection_wrapper.fotorama(this.fotorama_param);
this.fotorama_data = this.fotorama_init.data("fotorama");
},
console.log(this.fotorama_data) === undefined;
Самым простым решением стало, прицепить слушатель событий на контрол,
который вызывал это модальное окно, и после срабатывания оного, делать
инициализацию фоторамы.
$("#open-modal")
.on("click", function () {
ModelEdit.fotoramaInit();
});
Возможно кому-то будет полезно!