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