説明
		
			
			
		
クリックでマーカーの追加/削除を行うにはGEvent.addListener()を使ってクリックイベントを取得します。クリックイベントが発生した場合、マップ上であればイベントハンドラに渡される最初のパラメータはnullになります。マーカー上であればマーカーオブジェクトを返します。このため、マップ上でクリックされたか、マーカー上でクリックされたかを調べるには、イベントハンドラに渡された最初のパラメータがnullかどうか、オブジェクトかどうかを三項演算子を使って調べます。結果に応じてマーカーを削除するか、追加するかを処理します。
また、クリックで追加されたマーカーをdraggable: trueとすることで追加したマーカーをドラッグして移動させることができます。
				 
			
				
				
		<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
		<html xmlns="http://www.w3.org/1999/xhtml">
		<head>
		<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
		<title>Sample</title>
		<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAasAJryKxWJnBFVJa487d9hTHGAxTVT7IRADYa-JdYz7xQ8IQZBSthgDZdggYpQHsmm6WYtHstQFfLA" type="text/javascript"></script>
		<script type="text/javascript">
		//<![CDATA[
		 window.onload = function() {
		  var map = new GMap2(document.getElementById("gmap"));
		  map.setCenter(new GLatLng(37,136), 5,G_NORMAL_MAP);
		  map.addControl(new GLargeMapControl());
		  GEvent.addListener(map, "click", function(marker, point){
		   marker ? map.removeOverlay(marker) : map.addOverlay(new GMarker(point, { draggable: true }));
		  } );
		 }
		//]]>
		</script>
		</head>
		<body>
		<div id="gmap" style="width: 500px; height: 400px"></div>
		</body>
		</html>