Добавьте один маркер на карту с помощью плагина google-ui-map - PullRequest
1 голос
/ 15 февраля 2012

Это пример, который я пытаюсь изменить: http://jquery -ui-map.googlecode.com / svn / trunk / demos / jquery-google-maps-geocoding.html

Я хочу добавить один маркер.

    var markers = $('#map_canvas').gmap('get', 'markers');

Я получаю все маркеры, которых нет в начале.

    if(markers == null) {

    $(map).click( function(event) {
        alert (event);
        $('#map_canvas').gmap('addMarker', {
            'position': event.latLng, 
            'draggable': true, 
            'bounds': false
        }, function(map, marker) {
            findLocation(marker.getPosition(), marker);
        }).dragend( function(event) {
            findLocation(event.latLng, this);
        });
    });
}

Так что, если ни один маркер не позволяет его создать, но еще раз проверьте, есть ли маркер, просто включите его.

Моя проблема в том, что это если не правильно. маркеры по умолчанию дают пустую строку. Есть идеи?

--------

Решение

$(map).click( function(event) {

    if(!map.singleMarker) { 

    $('#map_canvas').gmap('addMarker', {
        'position': event.latLng, 
        'draggable': true, 
        'bounds': false
    }, function(map, marker) {
        findLocation(marker.getPosition(), marker);
    }).dragend( function(event) {
        findLocation(event.latLng, this);
    });

        map.singleMarker = true;        
    };  
});

1 Ответ

1 голос
/ 27 ноября 2012

Просто чтобы ответить на вопрос:

$(map).click( function(event) {

if(!map.singleMarker) { 

$('#map_canvas').gmap('addMarker', {
    'position': event.latLng, 
    'draggable': true, 
    'bounds': false
}, function(map, marker) {
    findLocation(marker.getPosition(), marker);
}).dragend( function(event) {
    findLocation(event.latLng, this);
});

    map.singleMarker = true;        
};  
});
...