Использую AngularJS & ImageMapster.
Сами map'ы и урл картинки подгружаются через ajax, после чего на них вешается mapster.
Столкнулся с проблемой что если попытаться певесить мапстер на картинку, на которую уже вешал ранее, мап не работает.
Демо:
http://arswarog.github.io/imagemapster/
Если зайти на #/view/1 грузится первая картинка
После если зайти на #/view/2 грузится 2-я картинка и корректно работает
Но если вернуться на уже ранее загруженную картинку #/view/1 мапстер не работает и сыпет ошибку в консоль
Код:
|
Uncaught TypeError: Cannot set property 'area' of undefined
m.MapData.getAllDataForArea @ jquery.imagemapster.js:3042
mouseover @ jquery.imagemapster.js:2715
m.MapData.me.mouseover @ jquery.imagemapster.js:2925
jQuery.event.dispatch @ jquery.js:4435
jQuery.event.add.elemData.handle @ jquery.js:4121 |
Естественно хотел прежде чем добавлять мапстер я его пробовал убрать
img.mapster('unbind'); но ничего не получалось
все самое интересное в директиве-обертке.
https://github.com/arswarog/arswarog...ectives.js#L97
Что я сделал не так?
Возможно нужно после img.mapster('unbind') нужно выполнить еще что-то, что бы все обработчики удалить. но я не знаю как. подскажите в каком направлении копать.
Заранее благодарен