У меня есть карта Google, которая внезапно перестала работать без видимой причины (я не трогал код несколько месяцев, но код оболочки нашей CMS мог измениться без уведомления корпорации).
http://www.democratandchronicle.com/section/builder
(извините за неприятный HTML за пределами карты, большая часть этого исходит от нашего корпоративного родителя ...)
Я сузил его до этой части моей функции drawMarker:
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html, { maxWidth: 500 });
});
Отметить:
alert(html); отображает правильный HTML-код для информационного окна.alert('test'); в нем)Я уже давно бился об этом. Что мне не хватает?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Попробуйте заставить JavaScript создать новую переменную из вашего HTML:
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html+'', { maxWidth: 500 });
});
Время от времени у меня возникали случайные проблемы с API Карт Google, и не раз они исправлялись путем возврата на одну версию API. то есть, если ваша строка включения javascript API карт Google похожа на эту http://maps.google.com/maps?file=api&v=2.xd&key=XXXXX
измените 2.x на что-то несколько версий назад (назад, когда он работал), например 2,132 или что-то в этом роде
пытаться:
GEvent.addListener(marker, 'click', function() {
this.openInfoWindowHtml(html, { maxWidth: 500 });
});
помните, что область действия объекта «маркер» находится за пределами вашей функции
Это разрешилось само собой. Я подозреваю, что обновление API что-то сломало на пару версий.
Если они обновили его, почему это изменение не действует на моей карте, какие-нибудь идеи? Я почти уверен, что все остальное работает нормально. Проблема - это почти копия вашей проблемы. Обработчик событий работает нормально. Я проверил HTML, тоже нормально.
Я понятия не имею. Это было почти два года назад. Вы должны начать новый вопрос и включить пример ссылки, демонстрирующей проблему.
У меня недавно была эта проблема, определенно запускались обработчики событий и т. д. Оказалось, что на странице было два экземпляра тега Google Maps <script>. Удаление одного исправило его.
У меня такая же проблема, несмотря на то, что я изменил версию API, я все еще не могу заставить ее работать. Как вы в итоге решили проблему?