Плагин $ .goMap - Получить функцию маркеров - PullRequest
0 голосов
/ 28 марта 2011

У меня проблемы с плагином goMap для jquery.Я хочу получить все маркеры на моей карте, однако при вызове функции getMarkers() она возвращает пустой массив.

Я предполагаю, что это как-то связано с областями действия?

Я добавляю маркеры, опрашивая базу данных с помощью вызова ajax.

$("#canvas").goMap({
    latitude: 44.230065,
    longitude: -76.50000,
    zoom: 14,
    maptype: 'ROADMAP'
});

load_markers();

function load_markers(query_url) {
    if (query_url == undefined) {
        query_url = '/posts/get_markers';
    }

    $.getJSON(query_url, function(data) {
         $.each(data, function(pair) {
            var id = data[pair]['posts']['id'];
            $.goMap.createMarker({
                latitude: data[pair]['posts']['lat'],
                longitude: data[pair]['posts']['lng'],
                draggable: false,
                id: id,
                html: {
                    ajax: "posts/ajax_show/"+id,
                    content: 'loading...',
                    popup: false
                }
            });
        });
    });
}

console.log(($.goMap.getMarkers()));

Спасибо!

1 Ответ

1 голос
/ 28 марта 2011

Попробуйте напечатать его в обработчике успеха вызова getJSON, иначе вы не будете знать, получили ли вы данные еще.Больше проблем со сроками, чем сферой, если я прав.

$.getJSON(query_url, function(data) {
         $.each(data, function(pair) {
            var id = data[pair]['posts']['id'];
            $.goMap.createMarker({
                latitude: data[pair]['posts']['lat'],
                longitude: data[pair]['posts']['lng'],
                draggable: false,
                id: id,
                html: {
                    ajax: "posts/ajax_show/"+id,
                    content: 'loading...',
                    popup: false
                }
            });
        });
        console.log(($.goMap.getMarkers()));
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...