我在我的应用程序中使用Google Drawing Library
。在此时,当用户点击Add New Marker
Button
,然后我激活Drawing Manager
,用户可以点击地图上的任意位置生成Marker
,然后执行我的后续listener
google.maps.event.addListener(LocationClass.dm, 'markercomplete', function(marker)
{
LocationClass.markerArray.push(marker);
marker.set("id", "marker_"+LocationClass.markerArray.length);
LocationClass.creatEvent();
LocationClass.dm.setDrawingMode(google.maps.drawing.OverlayType.FALSE);
});
目前,用户必须单击“按钮优先”以激活绘图管理器,然后单击地图上的任何点以生成标记。
但我希望当用户点击按钮绘图管理器时会激活并自动在地图上的任何一点(或中心)添加标记,以便执行相同的listener
那我怎么能这样做?
以下是Demo页面
答案 0 :(得分:2)
更新回答:添加新标记后,您可以将标记添加到地图的中心,例如:
newMarker:function() {
LocationClass.dm.setDrawingMode(google.maps.drawing.OverlayType.MARKER);
var centerMarker = new google.maps.Marker({
map: LocationClass.map,
position: LocationClass.map.getCenter()
});
google.maps.event.trigger(LocationClass.dm, 'markercomplete', centerMarker);
},
请参阅updated fiddle。