Нужно передавать собственно
this
в функцию.
Насчет того что не работает
.on('click')
скрипт просто отрабатывает быстрее чем подгружается map. Нужно просто весить событие на динамически подгружаемый блок
$('здесь класс или ид контейнера где находится элемент').on( 'click', 'a', function(){
//код выполнения
})
Главное что бы контейнер где находится элемент подгружался не динамически. Можно хоть body использовать как контейнер
$('body').on( 'click', 'a.указать класс, так как в контейнере может содержаться не один тег a', function()