使用google-ui-map插件添加单个标记到地图

时间:2012-02-15 18:42:34

标签: javascript jquery google-maps-api-3 jquery-ui-map

这是我尝试修改的示例: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);
        });
    });
}

因此,如果没有标记允许创建一个,但再次检查是否只有一个标记可以拖动它。

我的问题是这个如果不对。 markers默认为空字符串。有什么想法吗?

--------

解决方案

$(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 个答案:

答案 0 :(得分:1)

只是回答问题:

$(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;        
};  
});