1

これは私が変更しようとしている例です: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;        
    };  
});
4

1 に答える 1

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;        
};  
});
于 2012-11-27T12:38:36.367 に答える