Получите Элемент DOM маркера в Google Maps API 3

Я пытаюсь найти способ получить элемент DOM маркера. Кажется, что Google использует различные элементы для показа маркера и одной из обработки события.

Я выяснил 2 вещи до сих пор. Существует названная сгенерированная переменная fb это содержит элемент DOM на объекте маркера, но я думаю в следующий раз, когда Google обновляет API, это назовут чем-то другим. Таким образом, никакие не идут.

Во-вторых, если одно присоединение событие щелчка к маркеру, который API отправляет элементу события DOM как аргументам тому, что когда-либо функционирует, Вы указали. При просмотре его в Firebug я не могу найти отношения между двумя.

То, что я пытаюсь выполнить, должно управлять элементом DOM () и подать его больше информации затем просто элемент 'отделения' с фоном.

Я сделал это в версии 2 с помощью свойства имени (недокументированного), который генерирует идентификатор на элементе отделения.

У кого-либо есть идея?

23
задан Paolo 31 March 2014 в 13:30
поделиться

1 ответ

Я нашел действительно действительно плохой обходной путь. Можно использовать атрибут заголовка для передачи свойства ID.

fixMarkerId = function () {
                $('div[title^="mtg_"]').each(function (index, elem) {
                    el = $(elem);
                    el.attr('id', el.attr('title'));
                    el.removeAttr('title');
                });
            },
            tryAgainFixMarkerId = function () {
                if ($('div[title^="mtg_"]').length) {
                    fixMarkerId();
                } else {
                    setTimeout(function () {
                        tryAgainFixMarkerId();
                    }, 100);
                };
            }

if ($('div[title^="mtg_"]').length) {
                fixMarkerId();
            } else {
                setTimeout(function () {
                    tryAgainFixMarkerId();
                }, 100);
            };

Я очень не рекомендую это решение для любой производственной среды. Но на данный момент я использую его, чтобы я мог продолжать развиваться. Но все еще ищете лучшее решение.

3
ответ дан 29 November 2019 в 02:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: